Git Worktree Manager
Published by d-o-hub in rust-self-learning-memory
Review recommended39 installs
What this skill does
Manage git worktrees for efficient multi-branch development. Use when creating worktrees for feature branches, organizing worktree directories, cleaning up unused worktrees, or implementing worktree-based workflows.
Add Git Worktree Manager to your agent
Review the source and files first. When you are ready, copy the prompt instruction or use the CLI command supported by your environment.
Install with a prompt
Paste this into a compatible coding agent:
add this skill "git-worktree-manager" from https://github.com/d-o-hub/rust-self-learning-memoryInstall with the CLI
Run this command in a controlled environment after reviewing the repository:
npx skills add https://github.com/d-o-hub/rust-self-learning-memory --skill git-worktree-managerSkill instructions
Git Worktree Manager
Manage git worktrees to enable parallel multi-branch development while keeping the main working directory clean.
Recommended Directory Structure
project/
├── main-repo/ # Main working directory
└── worktrees/ # All worktrees here
├── feature/name/
├── bugfix/name/
└── experiment/name/
Core Commands
Create Worktree
# From existing branch
git worktree add ../worktrees/feature-name feature-branch
# Create new branch
git worktree add -b feature/new ../worktrees/new-feature
# Detached HEAD (specific commit)
git worktree add ../worktrees/temp HEAD~5
List Worktrees
git worktree list
git worktree list --porcelain # Machine-readable
Remove Worktree
git worktree remove ../worktrees/name # Safe (clean only)
git worktree remove --force ../worktrees/name # Force removal
git worktree prune # Clean administrative data
Lock/Unlock
git worktree lock ../worktrees/name # Prevent operations
git worktree unlock ../worktrees/name
Workflow Patterns
Feature Development
git worktree add -b feature/new ../worktrees/feature/new
cd ../worktrees/feature/new
# ... develop ...
cargo test # Test in isolation
git push
cd /path/to/main && git merge feature/new
git worktree remove ../worktrees/feature/new
Parallel Testing
for branch in feature/a feature/b; do
git worktree add ../worktrees/$branch $branch
cd ../worktrees/$branch && cargo test &
done
wait
Code Review
git worktree add ../worktrees/review/pr-123 origin/pr-123
cd ../worktrees/review/pr-123
cargo test
git worktree remove ../worktrees/review/pr-123
Find Orphaned Worktrees
git worktree list | while read path commit branch; do
if ! git show-ref --verify --quiet "refs/heads/${branch#*/}"; then
echo "Orphaned: $path"
fi
done
Best Practices
DO
- Organize in
../worktrees/directory - Use descriptive branch-based names
- Clean up after merging
- Test before merging to main
- Prune regularly to remove orphaned data
DON'T
- Create in random locations
- Leave with uncommitted changes
- Forget to prune administrative data
- Create conflicting branches
- Mix worktree/non-worktree workflows
Files included
- SKILL.md

