3 个 AI 同时写代码:我用 Git Worktree 提升开发效率 3 倍

现在 AI 编程工具有很多,Claude code、Codex、Gemini,国内的 GLM、Minimax、Kimi

那你有没有遇到过这样一种情况?

我想要开发一个新功能,但是我不确定哪一个模型能够实现的最好。

所以我希望可以多个模型围绕同一个功能并行去开发,最终挑选效果最好的那一个版本留下来。

怎么去实现呢?

有人说可以使用 Git 分支功能去实现,大致过程是这样的:

假设我们现在有一个主分支 main,上面存放着我们的基础代码。现在我想要开发一个新功能,这个新功能我让三个模型同时去开发。

那么此时我需要拉三个分支出来:

  • feature-codex
  • feature-claude
  • feature-gemini

让各个模型在自己的分支上写代码,最终选择最好的版本,merge 到主分支上。

这种方案有什么问题呢?

有过开发经验的小伙伴会知道,这是一个人类世界里非常标准的方案。但是放到 AI 上就会有很多隐形问题。

1)上下文 & 工作区来回切换成本很高

用这种方案,你需要频繁的去切换分支。相对应的就是下面的命令,你会频繁的去执行。

PLAIN

复制代码
git checkout feature-claude
让 Claude 改代码

git checkout feature-gemini
让 Gemini 改代码

这些命令虽然可以借助 AI 去执行,但是对于你本人来说,容易造成心智负担 + 手滑

2) AI 对「分支状态」理解很容易出错

不同的分支切换来切换去,AI 很容易忘了自己当前在哪一个分支。上下文也会被污染。

AI 非常容易在错误的分支上继续修改。所以你可能需要不停的提醒 AI,「你当前在 feature-claude 分支」

这在开发阶段非常让人烦躁。

3)合并冲突集中爆发

等你好不容易开发好了,准备把代码合并到主分支上的时候。

你会遇到:

  • Claude 的方案最好
  • 但 Gemini 也改了公共组件
  • Codex 改了样式
  • 你 merge 的时候突然一堆冲突

原本是想让几个模型并行开发,等他们开发完,挑选一个比较好的方案,但是实际上在合并代码的时候,却要处理无数的冲突。

所以分支方案不太可行。

那真正可行的方案是什么呢?

就是 Git worktree,这才是「AI 并行开发」的隐藏神器。

一句话把 Git Worktree 解释清楚:

同一个 Git 仓库,多个物理目录,每个目录绑定一个分支

直观结构:

PLAIN

bash 复制代码
project/
├── main/                # 主分支
├── wt-claude/           # Claude 的工作区
├── wt-gemini/           # Gemini 的工作区
└── wt-codex/            # Codex 的工作区

上面的工作区都是真实的磁盘文件夹,每个目录都有独立的文件状态,互不干扰。

具体用法:

1)开 worktree

PLAIN

bash 复制代码
git worktree add ../wt-claude feature-claude
git worktree add ../wt-gemini feature-gemini
git worktree add ../wt-codex feature-codex
  • Claude:只操作 wt-claude
  • Gemini:只操作 wt-gemini
  • Codex:只操作 wt-codex

这样,AI永远不会写错分支。

2)验证效果

当 AI 在不同的 worktree 开发完了之后,你可以浏览器开 3 个 tab,分别跑:

  • localhost:3001
  • localhost:3002
  • localhost:3003

然后挑选一个最好的版本。

3)合并

比如说,claude 给出的版本是最好的,那么直接:

SHELL

css 复制代码
git checkout main
git merge feature-claude

其他两个直接删掉,没有任何心理负担

SHELL

arduino 复制代码
git worktree remove ../wt-gemini
git worktree remove ../wt-codex
git branch -D feature-gemini feature-codex

实操演示

具体场景:

我们现在项目文件夹下有一个 index.html 文件,它是一个 todo 类的网页应用,现在我们想让 Claude / Codex / Gemini ,同时帮我们去优化一下页面样式,然后我们挑选一个最好的版本。

目前主分支的版本:

0、准备阶段

1)确保主分支是干净的

SHELL

vbnet 复制代码
使用命令:
git status


你应该看到:
On branch main
nothing to commit, working tree clean

首先确保主分支是干净的,之后才不会乱。

2)现在的目录结构

SHELL

复制代码
todohtml/
├── index.html/

1、从 main 拉出 3 个分支(先不用 worktree)

SHELL

复制代码
git branch todohtml-claude
git branch todohtml-codex
git branch todohtml-gemini

检查一下是否创建成功:

SHELL

复制代码
git branch

创建成功你会看到:

2、用 git worktree 把它们「实体化成目录」

CODE

csharp 复制代码
语法:git worktree add <新路径> <基于的分支>
git worktree add ../todohtml-claude todohtml-claude
git worktree add ../todohtml-codex todohtml-codex
git worktree add ../todohtml-gemini todohtml-gemini

上面命令执行前目录:

上面命令执行后目录:

注意:上面4个都是真实的磁盘目录,不是概念

3、确认每个目录绑定的分支

进入每个文件夹目录,确认目录和分支绑定一致。

SHELL

bash 复制代码
cd ../todohtml-claude
git branch --show-current

4、改代码

开三个终端窗口,每个窗口打开一个目录。

  • Claude → 只看 / 只改 todohtml-claude
  • Codex → 只看 / 只改 todohtml-codex
  • Gemini → 只看 / 只改 todohtml-gemini

把同样的功能,同样的提示词,发给三个不同的模型,让它们并行开始工作。

提示词:

帮我优化一下当前这个网页的样式让它变得更美观好看。

5、验收

等三个模型都改完了之后,你就把项目跑起来,看一下它们各自修改的结果,挑选一个你最满意的版本。

Claude 版本:

Codex 版本:

Gemini 版本:

6、合并你选中的分支

假如我们选中的是Gemini 版本,那我们需要把这个分支合并回我们的主分支。

SHELL

bash 复制代码
cd ../todohtml
git checkout main
git merge todohtml-gemini

7、清理不用的 worktree

把不用的 worktree 删除

SHELL

arduino 复制代码
git worktree remove ../todohtml-claude
git worktree remove ../todohtml-codex

然后删分支:

SHELL

复制代码
git branch -D todohtml-claude
git branch -D todohtml-codex

现在的状态是:

SHELL

bash 复制代码
worktree-demo/
├── todohtml/        # main + 已合并最佳方案
└── todohtml-gemini  # 还可以保留或一起删

到这里一次完整并行 AI 开发就结束了。

常见的 git worktree 命令

相关推荐
小碗细面3 小时前
告别996!Claude Code 6个实用工作流程
前端·人工智能·ai编程
longxiangam3 小时前
opencode + playwright 实现AI编程到测试的迭代闭环
ai编程
youcans_3 小时前
【AI辅助编程】ROP 图像预处理
图像处理·人工智能·ai编程·辅助编程
码农葫芦侠4 小时前
Vercel Labs Skills:AI 编程安装「技能Skills」的工具
人工智能·ai·ai编程
甲枫叶4 小时前
【claude热点资讯】Claude Code 更新:手机遥控电脑开发,Remote Control 功能上线
java·人工智能·智能手机·产品经理·ai编程
FE_C_P小麦4 小时前
实测避坑|Coze AI Chat视频生成巨坑!别再被AI夸大宣传割韭菜了
ai编程·coze
脚后跟6 小时前
AI助力嵌入式物联网项目全栈开发
嵌入式硬件·物联网·ai编程
前端小雪的博客.7 小时前
【保姆级教程】uniAI 插件高效开发 uni-app 微信小程序(附实战案例)
微信小程序·uni-app·ai编程·uniai
what丶k8 小时前
【微服务】Spring AI 使用详解:让微服务无缝集成 AI 能力
java·后端·ai编程