worktree
Git 提供的工作目录管理机制,允许从同一仓库创建多个独立工作树,共享 .git 对象库但各自拥有独立的分支与暂存区
核心事实
时间轴 (近 90 天)
隔离工作区在Git中通常通过短生命周期分支或worktree实现;配套的ephemeral worktree和沙箱执行环境可确保Agent的中间提交不会意外推送到远端。
AVP 的命名直接借鉴了 Git 的底层概念(如 worktree),其设计思路是建立在 Git 生态之上的。
Agent Arena 功能可在 Alibaba 环境中让最多五个模型并行处理同一任务,各自在独立 worktree 中运行,只将胜出者的代码应用到主工作区。
Claude Code 在退出未命名的交互会话时自动移除干净的 worktree,命名会话则会先询问
Codex 默认保留最近 15 个 worktree,超出后删除旧的
Git 只移除干净的 worktree——没有未跟踪文件、没有修改过的已跟踪文件。不干净的 worktree 需要 `--force`,被锁定的需要 `--force` 两次
Claude Code 在代理运行时锁定 worktree,代理结束后释放;被 kill 的会话留下的锁要等到后续扫描才释放
在 tool.call 钩子中,当代理试图编辑其 worktree 之外的代码时,操作会被暂停并等待人工确认;若无回应则默认拒绝执行。
在 ADE 场景中,worktree 的价值在于让多个 agent 并行修改同一项目的不同副本,避免互相覆盖文件或产生锁冲突;没有 worktree,多 agent 并行会退化为在同一目录里抢文件。
在 herdr 中,扇出(fan-out)是一个 Claude Code 技能,可为一个提示词创建多个 git worktree、启动多个 agent、并行提示、各自运行测试,最后生成对比表,且未经用户批准不会合并任何东西。
还有 1 条时间轴事件
全部知识事实 (11)
删除 worktree 应使用 git worktree remove 而非直接 rm -rf,否则 .git/worktrees 会残留元数据,需要用 git worktree prune 清理。
65%待验证隔离工作区在Git中通常通过短生命周期分支或worktree实现;配套的ephemeral worktree和沙箱执行环境可确保Agent的中间提交不会意外推送到远端。
50%待验证AVP 的命名直接借鉴了 Git 的底层概念(如 worktree),其设计思路是建立在 Git 生态之上的。
50%待验证Agent Arena 功能可在 Alibaba 环境中让最多五个模型并行处理同一任务,各自在独立 worktree 中运行,只将胜出者的代码应用到主工作区。
50%待验证Git 只移除干净的 worktree——没有未跟踪文件、没有修改过的已跟踪文件。不干净的 worktree 需要 `--force`,被锁定的需要 `--force` 两次
50%待验证Claude Code 在代理运行时锁定 worktree,代理结束后释放;被 kill 的会话留下的锁要等到后续扫描才释放
50%待验证Claude Code 在退出未命名的交互会话时自动移除干净的 worktree,命名会话则会先询问
50%待验证Codex 默认保留最近 15 个 worktree,超出后删除旧的
50%待验证在 tool.call 钩子中,当代理试图编辑其 worktree 之外的代码时,操作会被暂停并等待人工确认;若无回应则默认拒绝执行。
50%待验证在 ADE 场景中,worktree 的价值在于让多个 agent 并行修改同一项目的不同副本,避免互相覆盖文件或产生锁冲突;没有 worktree,多 agent 并行会退化为在同一目录里抢文件。
50%待验证在 herdr 中,扇出(fan-out)是一个 Claude Code 技能,可为一个提示词创建多个 git worktree、启动多个 agent、并行提示、各自运行测试,最后生成对比表,且未经用户批准不会合并任何东西。
50%