git worktree
是 Git 中的一个命令,它允许您在同一个仓库中维护多个工作树(working tree)。每个工作树代表一个单独的分支或提交,使您能够同时在不同的分支或代码版本上工作,而无需在分支之间切换。
比如,您可以在多个 working tree 同步开发不同的新版本、运行测试、比较多个版本的差异、快速验证项目等。
当您创建一个工作树时,Git 会在指定的路径下创建一个新的目录,您可以在该目录中处理特定的分支或提交。工作树与主仓库相连,因此您在工作树中进行的任何更改都会反映在仓库中,反之亦然。
以下是一些常用的 git worktree
命令:
-
git worktree add <path> <branch/commit>
:在指定的<path>
处创建一个新的工作树,并将指定的<branch>
或<commit>
检出到该工作树中。例如,git worktree add ../my-feature-branch feature-branch
在上级目录中创建一个新的工作树,并将feature-branch
分支检出到该工作树中。 -
git worktree list
:列出当前仓库中的所有工作树及其关联的分支或提交。 -
git worktree prune
:清理不再需要的工作树。这会删除已经被删除或不存在的分支或提交所关联的工作树。 -
git worktree remove <path>
:移除指定路径下的工作树。
请注意,git worktree
命令在 Git 2.5 版本及更高版本中可用,不能多个工作树对应同一个分支。