Archiving Projects
Workbench makes it easy to archive completed projects to GitHub, keeping your workspace clean while preserving your work.
What is Archiving?
Archiving moves a project to a dedicated GitHub organization and marks it as archived. This:
- Frees up local disk space
- Keeps your main GitHub organized
- Preserves the project for future reference
- Makes restoration easy when needed
Archive a Project
From within a project directory:
bash
wb archiveOr specify a directory:
bash
wb archive ./old-projectWhat Happens
- Pushes all local changes to the remote
- Transfers the repository to the archive organization
- Marks the repository as archived on GitHub
- Optionally deletes the local directory
Archive Organization
By default, projects are archived to markmals-archive. You can specify a different organization:
bash
wb archive --org my-archive-orgOptions
Keep Local Copy
By default, the local directory is deleted after archiving. To keep it:
bash
wb archive --keep-localSkip Confirmation
Archive without prompting for confirmation:
bash
wb archive -yDry Run
See what would happen without actually archiving:
bash
wb archive --dry-runOutput:
Would archive ./my-project to markmals-archive/my-project
Would delete local directory ./my-projectPrerequisites
Before archiving, ensure:
- GitHub CLI is authenticated with permission to transfer repos
- Archive organization exists and you have push access
- All changes are committed (Workbench will warn about uncommitted changes)
After Archiving
The archived repository will be:
- Transferred to the archive organization
- Marked as read-only (archived status)
- Visible on GitHub for reference
To bring it back, use wb restore.
Best Practices
When to Archive
- Project is complete and stable
- You haven't touched it in months
- You need to free up disk space
- You want to declutter your GitHub
When Not to Archive
- Active development is ongoing
- Others are contributing
- You need the project regularly
Naming Conventions
Keep original repository names when archiving. This makes restoration intuitive:
bash
# Archived as markmals-archive/my-website
wb archive ./my-website