A Rust CLI for managing git worktrees by branch name, built for running multiple AI coding agents in parallel.
k1LoW/git-wt
A Git subcommand that simplifies git worktree: switch, create, delete and rename worktrees by branch or directory name.
- Stars
- 562
- Forks
- 25
- Open issues
- 12
- Last commit
- 23 days ago
What is it?
git-wt is a Git subcommand that wraps `git worktree` with a shorter interface. Running `git wt <branch>` switches to an existing worktree or creates one, including the branch if it does not exist yet. Worktrees can be listed (with optional JSON output), deleted, and renamed, with the directory and branch changed together.
The tool handles common setup work when a new worktree is created. It can copy gitignored, untracked or modified files, or symlink large directories such as node_modules instead of duplicating them. Hooks can run commands like dependency installation after creation, and separate delete hooks run before removal. Configuration is done through git config, and most options can be overridden per invocation.
Shell integration for zsh, bash, fish and PowerShell adds automatic directory switching and tab completion. Safe deletion refuses to remove worktrees with uncommitted changes, and the default branch is protected from accidental removal.
Key features
- 01Switch to or create a worktree and branch with a single `git wt <branch>` command.
- 02Safe delete that keeps uncommitted work and unmerged branches, plus a force-delete option.
- 03Rename a worktree directory and its branch together.
- 04Copy or symlink ignored, untracked or modified files into new worktrees.
- 05Run hooks after creation or before deletion.
- 06Shell integration for zsh, bash, fish and PowerShell with completion.
Use cases
- Working on several branches at once without stashing or switching branches in one checkout.
- Reviewing a pull request in a separate directory while keeping your current work untouched.
- Sharing large dependency folders across worktrees with symlinks to save disk space and setup time.
- Integrating worktree switching with fzf, peco or tmux for interactive selection.
Quick start
- 1
Install with Go
go install github.com/k1LoW/git-wt@latest - 2
Or install with Homebrew
brew install k1LoW/tap/git-wt - 3
List worktrees in your repository
git wt - 4
Switch to or create a worktree for a branch
git wt feature-branch
Things to know
- Shell integration for automatic directory switching is marked experimental for bash, fish and PowerShell.
In collections
Topics
FAQ
- What is git-wt?
- A Git subcommand that simplifies git worktree: switch, create, delete and rename worktrees by branch or directory name. git-wt is a Git subcommand that wraps `git worktree` with a shorter interface. Running `git wt <branch>` switches to an existing worktree or creates one, including the branch if it does not exist yet. Worktrees can be listed (with optional JSON output), deleted, and renamed, with the directory and branch changed together.
- Is git-wt free to use? What license does it have?
- git-wt is open source under the MIT license. Check the license terms before using it in commercial products.
- Is git-wt still maintained?
- Actively maintained. The last commit to git-wt was on Oct 15, 2026.
- What can I use git-wt for?
- Working on several branches at once without stashing or switching branches in one checkout. Reviewing a pull request in a separate directory while keeping your current work untouched. Sharing large dependency folders across worktrees with symlinks to save disk space and setup time. Integrating worktree switching with fzf, peco or tmux for interactive selection.
- How do I install git-wt?
- Install with Go: go install github.com/k1LoW/git-wt@latest Or install with Homebrew: brew install k1LoW/tap/git-wt List worktrees in your repository: git wt Switch to or create a worktree for a branch: git wt feature-branch
- Where can I get git-wt?
- The source code and installation instructions are on GitHub: https://github.com/k1LoW/git-wt
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A Git worktree CLI that auto-generates worktree paths from branch names, runs setup hooks, and removes worktrees together with their branches.
A native, lightweight Git client for macOS that manages repositories and worktrees, reviews diffs, and commits changes in one window.
A Claude Code plugin with self-correcting memory, persistent FTS5 research wikis, and workflow skills, commands and hooks for AI coding agents.
A Bash CLI that wraps git worktree to create, configure, and remove per-branch worktrees, with editor and AI agent launchers.
A desktop and headless dev environment that runs multiple AI coding agents in parallel, each in its own git worktree.