使用工作树在多个分支上工作
工作树是同一存储库的第二个工作文件夹,具有自己的签出分支,例如 git worktree add。检查拉取请求、运行长时间构建或让编码代理在其中一个中工作,而无需在另一个中隐藏任何内容。
免费已更新
免费使用 GitTree:登录后的所有本地 Git 功能。
开始之前
- 存储库已打开。每个分支一次只能在一个工作树中检出。
在哪里可以找到它
- 左侧面板的 Worktrees 部分列出了它们;右键单击它或工作树以执行操作。
- 右键单击分支:Create Worktree for This Branch…;右键单击提交:Create Worktree from This Commit…。
| 行动 | macOS | Windows 和 Linux |
|---|---|---|
| 命令面板,然后是 Create Worktree… | ⌘⇧P | Ctrl+Shift+P |
步骤
创建一个
选择Create Worktree…。在 Check out 下,选择一个现有分支或带有 Branch name 的 A new branch here,然后选择带有 Browse… 的 Folder。
打开它
按 Create Worktree,然后按 Open Worktree in a New Tab。该选项卡的工作方式与任何存储库类似:有自己的更改、终端和图表。
预期结果
两个文件夹、两个分支、一个存储库:在任一文件夹中所做的提交都会立即显示在两个图表中。
管理工作树
- Lock Worktree… 阻止 Git 修剪可移动驱动器上保存的工作树; Unlock Worktree 将其抬起。
- Move Worktree… 更改其文件夹; Remove Worktree… 检查该文件夹没有未提交的工作后将其删除。
- Prune Stale Worktrees… 清理手动删除文件夹的工作树; Repair Worktree Links 修复已移动的内容。
- 对于非常大的存储库,Sparse Checkout… 仅检查您列出的文件夹; Check Out All Files 返回。
如果出现问题
“那个分店已经签出……”
一个分支只能位于一个工作树中。打开该工作树,或者为此创建一个新分支。
“首先关闭...的选项卡”
工作树在选项卡中打开,带有终端和文件监视。关闭该选项卡,然后移动或删除它。
问题
工作树是否复制整个存储库?
不。他们共享同一个存储库及其历史记录;只有签出的文件存在两次。即使对于大型项目,创建一个也很快。
