本页由自动投喂流水线编译生成,尚未经人工复核——置信度以页面标注为准,引用前请自行核实。
git worktree 并行开多个 Claude Code
属性
git worktree 并行开多个 Claude Code
一个 Claude Code 会话推进一个任务时,人只能旁观或走开——算力没吃满。自然的下一步是并行开多个 CC 会话各做一件事。但同一个工作目录里多个实例同时改文件,必然互相覆盖。
课程给的正解不是加文件锁,而是 git worktree:让每个并行任务拥有一个物理隔离的工作目录,它们共享同一个 .git(同一份提交历史与对象库),却各有各的工作区与分支。冲突不在编辑时发生,而是推迟到最后合并——那时再开一个 CC 会话读冲突、自动解决。
工作流
- 把存放 worktree 的目录(如
.trees/)加进.gitignore,避免它被当成项目内容。 - 为每个任务建一个 worktree:
git worktree add .trees/feature-a(各自在独立分支)。 - 每个 worktree 目录里各开一个终端、各起一个 Claude Code 会话,让它们并行做各自的功能。
- 各会话在自己的分支上 commit。
- 全部完成后,回主目录起一个 CC 会话,把各分支合并进来——有冲突就让它读冲突并解决。
为什么是“物理隔离”而非“锁”
锁是让并发者排队等一份共享资源;worktree 是直接消除共享写——每个实例写自己的目录,互不可见,直到显式合并。这把“并发协调”这个难题从运行时(编辑冲突)挪到了集成时(合并冲突),而合并冲突恰好是 git 和 CC 都擅长处理的。
本库一手印证
本项目在为寓言剧场制片厂从干净 HEAD 构建 RC 时用过 worktree 隔离:git -c core.longpaths=true worktree add <短路径> HEAD + node_modules junction,把“污染的工作树”与“干净构建”物理分开。踩到的坑见 生成与验证的工具链坑——Windows 上 worktree 路径过长要 core.longpaths=true + 短路径。这条和课程的“并行开发”是同一机制的两种用途:用 worktree 把互相干扰的两份工作物理隔离。
关联
被引用于 2
- DeepLearning.AI《Claude Code》课程增量
- worktree 并行— lesson 7。多实例抢写文件的正解是物理隔离而非锁。
- 高效协作
- git worktree 并行开多个 Claude Code — 概念
本页由自动投喂流水线编译生成、待人工复核;原始资料保留在私有工作区。