Git 高级
Amanda Crawford-Adamo
Software and Data Engineer
Git 工作树命令
git worktree

此表对比在开发流程中使用 git worktree 与 git switch。 $$
| Git 工作树 | Git Switch |
|---|---|
| 多个活动分支 | 同一时间仅一个活动分支 |
| 独立目录 | 单一工作目录 |
| 无需暂存更改 | 可能需要暂存 |
从 <branch> 创建新工作树到目录 <path>
git worktree add <path> <branch>
示例
从 bugfix/data-validation 分支创建新工作树到 ../etl-bugfix 目录
git worktree add ../etl-bugfix bugfix/data-validation
git worktree list 示例输出
$ git worktree list
flight-pipeline a1b2c3d [main]
flight-pipeline-feature e4f5g6h [feature]
flight-pipeline-hotfix i7j8k9l [hotfix]
git worktree remove <path> 示例输出
$ git worktree remove flight-pipeline-hotfix
flight-pipeline-hotfix: deleted
适用场景:
谨慎使用:
使用 Git 工作树的注意事项:
Git 高级