Git Worktree Manager
May 28, 2026 · View on GitHub
English | 简体中文
Manage Git worktrees safely and efficiently inside Visual Studio Code.
Create, switch, and clean up worktrees without losing track of your branches.
Support 💖
If you enjoy this extension, consider giving it a star ⭐ and sharing it on social platforms like X.com—it really helps!
![]() PayPal |
![]() 微信 |
Why Git Worktree Manager? 🌟
Git worktrees make parallel development cleaner by isolating branches into separate directories,
but managing them manually can be tedious and error-prone.
Git Worktree Manager brings worktree management into VS Code,
helping you create, switch, and clean up worktrees safely while keeping your repository organized.
Key Features 🎯
- Quick Worktree Switching: Switch between worktrees using
Ctrl+Shift+Ror the Source Control view. - Effortless Worktree Creation: Create new worktrees without touching the command line.
- Workspace Integration: Add worktrees to your VSCode workspace for easy access.
- Favorites Management: Save frequently used worktrees for quick access.
- Copy Untracked Files: Automatically include untracked files when creating a new worktree.
- Multi-Language Support: Available in English, Simplified Chinese, Traditional Chinese and Japanese.
- Customizable Terminal: Use your preferred terminal (e.g., iTerm on macOS, Git Bash on Windows).
Getting Started 🚀
-
Requirements
- git version >= 2.40
-
Install the Extension:
- Download from the Visual Studio Marketplace or Open VSX Registry.
- Or search for "Git Worktree Manager" in VSCode’s Extensions view and install.
-
Quick Start:
- Open VSCode in a Git repository.
- Press
Ctrl+Shift+Rto launch the worktree manager. - Create, switch, or delete worktrees using the intuitive interface.
-
Example Workflow:
- Create a new worktree: Select “Create Worktree” and specify a branch.
- Switch to it instantly via the Source Control view or command palette.
- Add it to your VSCode workspace to work on multiple branches side by side.
- Save it to favorites for quick access in the future.
Configuration ⚙️
Customize Git Worktree Manager to fit your workflow:
-
git-worktree-manager.treeView.toSCM
Display worktrees in the Source Control view. -
git-worktree-manager.treeView.worktreeDescriptionTemplate
Customize the description next to each worktree in the tree view. Handy for spotting stale worktrees at a glance.
Available variables:$FULL_PATH,$BASE_NAME,$RELATIVE_PATH,$LAST_COMMIT(relative time of the last commit, e.g. "3 weeks ago"). Hover a worktree to see the absolute timestamp.
Example:"$RELATIVE_PATH · $LAST_COMMIT" -
git-worktree-manager.worktreeCopyPatterns
Specify files or directories to be copied into a newly created worktree
(for example, local config files or environment-specific assets).
Example:[".env.local", "config/*.json"] -
git-worktree-manager.worktreeCopyIgnores
Exclude specific files or paths from being copied when creating a worktree,
even if they matchworktreeCopyPatterns.
Example:["node_modules/**", "dist/**"] -
git-worktree-manager.postCreateCmd
Run a command automatically after a worktree is created
(for example, installing dependencies or running setup scripts).
Example:"pnpm install"or"echo 'Worktree ready'" -
git-worktree-manager.preRemoveCmd
Run a command automatically before a worktree is removed
(for example, tearing down side effects such as a per-worktree database
schema or stopping services).
Runs inside the worktree directory. If the command fails or is cancelled,
the removal is aborted.
Example:"pnpm run worktree:teardown-db" -
terminal.external.windowsExec
Set the external terminal on Windows
(e.g."C:\\Program Files\\Git\\bin\\bash.exe"for Git Bash). -
terminal.external.osxExec
Set the external terminal on macOS
(e.g."iTerm.app").
Contributing 🤝
We love contributions! Here’s how to get involved:
- Fork the repository.
- Create a feature branch (
git checkout -b feature/awesome-idea). - Commit your changes (
git commit -m "Add awesome idea"). - Push to the branch (
git push origin feature/awesome-idea). - Open a Pull Request.
Have ideas? Open an issue with the "enhancement" tag or explore open issues.
License 📜
Distributed under the MIT License. Use, modify, and share freely!

