工作树与内嵌终端
同时推进几件事——或者让几个 AI 编码助手各自在独立目录里干活——用 Git worktree 最干净。Fox Git 把工作树当作一等公民:工作树面板(⌘6)里能看到每一个工作树的状态,并能安全地清理。
新建工作树
在工作树面板点 +,或从分支右键“在新工作树中检出…”、提交右键“从此提交新建工作树…”、命令面板进入。可以基于新分支、已有分支或某个提交(分离检出)创建:
- 文件夹默认放在主工作树旁边,命名为
<仓库名>-<分支>,并自动避开重名; - 已在别处检出的分支不可选,新分支名冲突时直接提示;
- 可以勾选创建后立即打开。
新建后自动执行的命令
在仓库设置里可以配置新建工作树后要运行的命令,例如 pnpm i、复制 .env。命令会在新工作树的内嵌终端里运行。文件夹被手动移动过的工作树,可以用“修复工作树”(git worktree repair)重新连上。
按状态分组
工作树面板把工作树分成四组:
| 分组 | 含义 |
|---|---|
| 进行中 | 有未提交改动,或最近有活动 |
| 久未活动 | 很久没有提交和检出 |
| 可清理 | 分支已经合并到主分支(普通合并、rebase 合并和 squash 合并都能识别) |
| 失效 | 文件夹已不存在 |
每张卡片显示分支、未提交改动、ahead / behind、合并状态和最近活动;占用空间按需计算。右键菜单里可以查看合并状态(以及包含它的其他分支)、计算占用空间、清理依赖与构建产物(git clean -X -d,保留 .env)、锁定和删除。
批量清理
多选后可以一次删除,“可清理”分组提供全选。可以同时删除已合并的分支;有改动或未跟踪文件的工作树会说明会丢失什么,并要求强制删除。主工作树和当前工作树不能删除。
内嵌终端
标题栏的“终端”按钮或 Ctrl+` 打开底部终端,起始目录是当前仓库或工作树的根目录:
- 按仓库分组的多个标签,收起面板或切换标签时 shell 继续运行;
- 支持查找(
⌘F)、清屏(⌘K),链接用系统浏览器打开; - 在终端里执行命令后,Fox Git 会自动刷新仓库状态。
命令行打开
在“设置”里一键安装 shell 命令后,可以在任意目录执行 foxgit . 用 Fox Git 打开当前仓库。