有时主分支正在跑测试,临时又要切一个小修复,来回 stash 很容易把现场搞乱。Git 自带 worktree,可以在旁边目录开一个工作树:
git worktree add -b fix/typo ../demo-fix main
cd ../demo-fix
# 修改、测试
git worktree remove ../demo-fix
环境:Git 2.5+。main 换成你要基于的分支或提交;新工作树删掉前要确认没有未提交改动。要看当前有哪些工作树,跑 git worktree list 就行。适合短期并行改动,不用复制整个仓库。