知识库/AI 与 Agent

本页由自动投喂流水线编译生成,尚未经人工复核——置信度以页面标注为准,引用前请自行核实。

git worktree 并行开多个 Claude Code

属性
概念AI 与 Agent属于高效协作置信· 1 源2026-07-17#claude-code#git#workflow#parallel

git worktree 并行开多个 Claude Code

一个 Claude Code 会话推进一个任务时,人只能旁观或走开——算力没吃满。自然的下一步是并行开多个 CC 会话各做一件事。但同一个工作目录里多个实例同时改文件,必然互相覆盖。

课程给的正解不是加文件锁,而是 git worktree:让每个并行任务拥有一个物理隔离的工作目录,它们共享同一个 .git(同一份提交历史与对象库),却各有各的工作区与分支。冲突不在编辑时发生,而是推迟到最后合并——那时再开一个 CC 会话读冲突、自动解决。

工作流

  1. 把存放 worktree 的目录(如 .trees/)加进 .gitignore,避免它被当成项目内容。
  2. 为每个任务建一个 worktree:git worktree add .trees/feature-a(各自在独立分支)。
  3. 每个 worktree 目录里各开一个终端、各起一个 Claude Code 会话,让它们并行做各自的功能。
  4. 各会话在自己的分支上 commit。
  5. 全部完成后,回主目录起一个 CC 会话,把各分支合并进来——有冲突就让它读冲突并解决。

为什么是“物理隔离”而非“锁”

锁是让并发者排队等一份共享资源;worktree 是直接消除共享写——每个实例写自己的目录,互不可见,直到显式合并。这把“并发协调”这个难题从运行时(编辑冲突)挪到了集成时(合并冲突),而合并冲突恰好是 git 和 CC 都擅长处理的。

本库一手印证

本项目在为寓言剧场制片厂从干净 HEAD 构建 RC 时用过 worktree 隔离:git -c core.longpaths=true worktree add <短路径> HEAD + node_modules junction,把“污染的工作树”与“干净构建”物理分开。踩到的坑见 生成与验证的工具链坑——Windows 上 worktree 路径过长要 core.longpaths=true + 短路径。这条和课程的“并行开发”是同一机制的两种用途:用 worktree 把互相干扰的两份工作物理隔离

关联

  • subagent 之外的另一种“并行”——subagent 并行在一个会话内隔离上下文;worktree 并行在多个会话间隔离文件系统。
  • 出处:课程增量lesson 7。

本页由自动投喂流水线编译生成、待人工复核;原始资料保留在私有工作区。

人负责策展与提问,AI 负责编译与记账· 源自 Karpathy 的 LLM Wiki 构想