Repo Manager is a ZSH plugin that transforms how you work with git repositories by using a worktree-first workflow. Instead of constantly switching branches, stashing changes, and dealing with checkout conflicts, Repo Manager clones repositories as bare repos with worktrees for each branch, enabling instant context switching.
Instant context switchingEach branch lives in its own directory. Switch between branches by simply changing directories—no stashing, no checkout thrashing.
repo wt go feature-auth # cd to feature-auth worktreerepo wt go main # cd to main worktree
Parallel workflowsRun builds, tests, or servers on multiple branches simultaneously. Each worktree is an independent working directory.PR reviews without disruptionCreate a worktree from any GitHub PR, review the code, run tests, then remove it—all without touching your work-in-progress branches.
repo wt pr 42 # fetch PR #42, create worktree, cd into it# review, test, commentrepo wt rm pr-branch # clean up
Organized repository structureAll repositories are stored in a consistent, hierarchical layout under $REPO_BASE_DIR:
$REPO_BASE_DIR/github.com/user/repo/├── .bare/ # bare git repo├── .git # file pointing to .bare├── main/ # worktree for main branch├── feature-auth/ # worktree for feature branch└── fix-crash/ # worktree from PR review
# Working on feature, need to review PRgit stashgit checkout pr-branch# review codegit checkout feature-authgit stash pop# Can't run parallel builds/tests# Can't keep multiple branches ready# Risk of stash conflicts
Repo Manager uses git’s native worktree feature under the hood, but automates the bare repository setup and worktree management that would otherwise require manual git commands.