10+年产品经理聊聊产品、测测产品,产品人交流学习成长平台,按 Ctrl+D 收藏我们
关于我 留言板 小程序 标签云

苏米客

  • 首页
  • AIGC
    • AI最新动态
    • AI学习教程
    • AI工具集合
    • AI产品百科
    • AI编程开发
    • AI提示词
    • AI开源项目
    • AI智能体
  • Axure
    • Axure动态
    • Axure教程
  • 产品
    • 用户体验
    • 产品设计
    • 苏米杂谈
  • 资源
    • 产品UI组件库
    • 开源图标库
    • 中后台框架
  • 书单
    • AI书籍
    • 用户体验
    • UI视觉
    • 产品研究
    • 其他类型
  • 下载
    • Axure组件
    • Axure原型
    • 文档报告
    • 素材资源
  • 登录
  • 首页
  • AIGC
    • AI最新动态
    • AI学习教程
    • AI工具集合
    • AI产品百科
    • AI编程开发
    • AI提示词
    • AI开源项目
    • AI智能体
  • Axure
    • Axure动态
    • Axure教程
  • 产品
    • 用户体验
    • 产品设计
    • 苏米杂谈
  • 资源
    • 产品UI组件库
    • 开源图标库
    • 中后台框架
  • 书单
    • AI书籍
    • 用户体验
    • UI视觉
    • 产品研究
    • 其他类型
  • 下载
    • Axure组件
    • Axure原型
    • 文档报告
    • 素材资源
当前位置: 首页 » AI编程开发

Claude Code CLI 支持 Worktree:多分支并行独立工作指南

2小时前 AI编程开发 5 0

 

Claude Code Agent Teams 可以将任务按团队开发模式分饰多角并行开发,但这种工作模式仍然建立在单一工作区和单个任务的基础上。

如果想要并行开发多任务,就需要用到 Worktree 功能。

Claude Code Worktree 功能在 2025 年 2 月就发布了,Anthropic 负责人 Boris Cherny 称它为"排名第一的生产力技巧"。

Worktree 的优势与限制

优势:

  • 支持多 Claude Code 实例和多任务并行开发
  • 环境隔离互不影响

限制:

  • 总是从远端默认分支签出
  • 指定分支签出需要 Git 原生命令配合

Claude Code Worktree 功能介绍

Worktree 简介

Worktree 是 Git 的原生功能,Claude Code 的 --worktree 命令将这个功能封装得更加简单易用,一条命令就能创建隔离环境、启动 Claude 实例、完成后自动清理。

技术特点:

  • 共享数据库:Worktree 共享同一个.git 数据库,所有的提交历史、分支信息都是共享的
  • 独立文件状态:每个 worktree 维护独立的文件状态,同时共享 git 历史记录
  • 自动化管理:自动创建隔离环境、启动 Claude 实例,并在任务完成后自动清理

使用场景

日常使用 Claude Code 的开发模式是以文件目录为工作区,使用 Git 进行版本控制,这就意味着工作区每次只能有一个工作分支。如果启用多个 Claude Code 窗口进行开发就会导致代码冲突。现在有了 Worktree 就可以很好地处理这种使用场景。

苏米注:Worktree 也不是万能的,在小任务上使用反而浪费时间,因为使用 Worktree 需要经历创建环境、安装依赖、开发、合并等过程,可能比任务本身耗时还久。

Worktree 更适合以下使用场景:

  • 功能解耦:当你有多个互不相关的 Feature 或 Bug 需要同时开发/修复时
  • 长时任务托管:对于需要运行很久的任务(如大规模重构或跑大型测试),可以开一个 Worktree 让 Claude 慢慢跑,不影响你在主目录继续写代码
  • 实验性改动:在完全隔离的环境中进行风险较高的尝试,即便写烂了也不会影响主分支的稳定性

前置条件

在 Claude Code CLI 中使用 Worktree 需满足以下条件:

  • Git 初始化:必须在已初始化的 Git 仓库目录中
  • 至少有一个 commit:空仓库无法创建 worktree
  • 有远程默认分支:必须有远程默认分支,Claude Code CLI Worktree 默认从远程分支检出

Git 仓库初始化检查
远程分支信息查看

基本使用:创建 Worktree

首先确保项目已经初始化过 Git 即项目中包含.git 目录。

在命令行终端输入git remote show origin查看远程分支信息。

我们可以验证一下 Worktree 的默认迁出分支是不是默认远程分支。首先基于 main 分支创建一个 dev 分支,在本地 main 分支添加"branch main"标识,在本地 dev 分支添加"branch dev"标识。

创建 dev 分支并添加标识
main 分支标识
dev 分支标识

接着使用 --worktree 或 -w 参数启动 Claude Code CLI:

# 创建名为 "feat-home" 的 worktree 并启动 Claude
$ claude -w feat-home

# 自动生成随机名称(如 "curious-marinating-flamingo")
$ claude -w

启动后可以看到 Claude Code 在工作区.claude/worktrees 目录下创建了 2 个新的工作区目录。

Worktree 工作区目录

打开 Worktree 工作区下的 README 文件可以看到均是未做过修改的,可以排除 Worktree 的代码是从本地本分支创建的。

Worktree 中 README 文件内容

我们也可以让 AI 帮我们分析,可以看到 AI 通过 git log、git merge-base 等信息确认:worktree 是基于 origin/main 创建的,而非当前分支。

AI 分析 Worktree 来源

在启动的 Claude Code CLI 中执行!pwd 可以看到当前工作区目录已经变成了 Worktree 工作区目录,已经不再是默认的主工区目录了。

Worktree 工作区路径

Worktree 除了创建了工作区目录,还同样创建了 Git 分支,在 Cursor 等 IDE 中可以很直观地看到。

IDE 中显示的 Worktree 分支

苏米注:从上面验证可以看到,Claude Code CLI Worktree 命令主要做了 4 件事:在.claude/worktrees/ 目录下创建新的工作目录;创建名为 worktree-的新分支;从远端默认分支检出代码;在 Worktree 新目录中启动 Claude Code。

从特定分支签出

Claude Code Worktree 默认是从远端的默认分支签出代码的,如果想从指定分支签出代码,我们可以通过 AI 创建或者使用 Git 原生命令创建。

通过 AI 创建

首先在当前分支添加分支标识并提交(没有提交的内容从当前分支签出时无法同步签出)。

当前分支添加标识并提交

在当前 Claude Code CLI 会话中直接让 Claude Code 创建 Worktree:

AI 创建 Worktree 指令

查看新创建的 Worktree 工作区中的 README 文件是包含我们上面添加的分支标识的。

新 Worktree 中的 README 内容

Git 原生命令创建

Claude Code CLI Worktree 是在 Git 原生命令基础上封装的,所以使用 Git 命令创建 Worktree 是可行且更强大的。我们切换到 dev 分支,在命令行终端执行如下命令基于当前分支创建 Worktree:

# 基于当前 HEAD 创建 worktree
$ git worktree add -b test-feature .claude/worktrees/test-feature HEAD

创建完成后和 Claude Code Worktree 创建的效果一致。

Git 命令创建的 Worktree

我们也可以基于特定的分支创建 Worktree:

# 基于某个特定分支
$ git worktree add -b hotfix-home .claude/worktrees/hotfix-home origin/develop

使用 Git 命令创建的 Worktree,我们可以进入到 Worktree 工作目录启动 Claude Code CLI:

$ cd .claude/worktrees/test-feature
$ claude

也可以直接使用 --worktree 参数启动,Claude Code CLI 会自动打开.claude/worktrees/test-feature 工作区。

退出与清理

当我们从 Worktree 中退出时,Claude Code CLI 会提示我们选择保留或删除,需要保留下次继续使用一定要选【Keep worktree】。

退出 Worktree 时的选项

  • Keep worktree:保留 Worktree
  • Remove worktree:删除 Worktree 及所有文件更改、Commit

我们需要重新启用已存在的 Worktree 时,可以直接通过下面命令启动:

$ claude -w feat-home

代码合并

使用 Claude Code Worktree 开发并验证完成后,下一步就是要把改动合并到主分支,我们同样可以通过 AI 合并和手动合并两种方式来完成。

通过 AI 合并(推荐)

提交修改内容后,在 Claude Code CLI 会话中让 AI 帮忙合并:

提交 Worktree 修改

把 worktree-test-feature 分支改动合并到当前分支

如果 worktree 中某些不想要的 commit,可以选择性的 cherry-pick:

查看 worktree-test-feature 分支所有 commit 历史,把修改 README 的 commit cherry-pick 到当前分支

该示例中我们修改了 dev 和 worktree-test-feature 中的 README 文件,在合并时会出现冲突,我们只需告诉 AI 合并规则就行,比如我这里是"保留双方更改",也可以在 IDE 中手动进行合并。

AI 处理合并冲突

合并完成后,我们就得到最终合并后的代码,合并后可以看到 Claude Code 同时清理了 test-feature Worktree 工作目录和分支。

合并完成后的状态

手动合并

直接在命令行终端输入下面命令进行合并:

$ git merge feat-new-feature

命令行合并分支

或者在 IDE 中选择【分支】【合并】。

IDE 中合并分支

与通过 AI 合并方式不同的是,手动合并 Claude Code CLI 不会帮我们清理合并后的 Worktree 和分支,我们需要手动进行清理。

手动清理 Worktree

使用如下命令清除 Worktree:

$ git worktree remove .claude/worktrees/feat-new-feature

注意事项

worktree 删除失败

Worktree 没有被删除时分支是不能被删除的。

分支删除失败提示

需要手动使用 Git 命令或手动删除 Worktree:

$ git worktree remove .claude/worktrees/feat-new-feature

删除完成后即可删除分支。

分支删除成功

总结

Claude Code Worktree 是一个强大的多任务并行开发工具,特别适合需要同时处理多个功能开发、Bug 修复或实验性改动的场景。通过环境隔离,可以避免代码冲突,提高开发效率。

使用 Worktree 的关键是理解它的工作机制——从远程默认分支检出、独立文件状态、共享 git 历史。掌握了这些,就能灵活运用 Worktree 处理各种复杂的开发场景。

声明:本站原创文章文字版权归本站所有,转载务必注明作者和出处;本站转载文章仅仅代表原作者观点,不代表本站立场,图文版权归原作者所有。如有侵权,请联系我们删除。
未经允许不得转载:Claude Code CLI 支持 Worktree:多分支并行独立工作指南
#Claude Code #Worktree #Git #多分支 #并行开发 
收藏 1
小白必看!3 分钟用 WorkBuddy 拯救你的工作效率
Anthropic 为 Claude Code 加入自动记忆:MEMORY.md 实测体验
推荐阅读
  • 最近用的贼多的 3 个 Claude Code 开源宝藏:WaveTerm、Claude HUD、浏览器自动化
  • Cursor新手3分钟快速搞懂 Ask/Manual/Agent 三种模式及高级技巧
  • Gemini 3 Pro 在 Gemini CL 上的完整使用指南:从申请到上手的四步操作流程
  • OpenCode + oh-my-opencode,这才是编程AI Agent该有的样子
  • Spec Kit 实战指南:用规范驱动开发告别 Prompt 工程难题
评论 (0)
请登录后发表评论
分类精选
手把手教你用支付宝订阅 Cursor Pro:国内用户最全开通教程(附取消自动扣费)
24613 9月前
Claude Code Rules:claude.md文件配置完全指南
19868 8月前
Claude Code + MCP 实战教程:手把手教你如何在Claude Code里面使用MCP
14375 8月前
学生党0元白嫖!手把手教你解锁Cursor Pro年VIP,超详细申请教程(附避坑指南)
13776 11月前
Cursor 0.46更新,新增支持Claude 3.7 + GPT 4.5,Cursor Pro 无限续杯攻略,全自动化工具使用说明
13066 1年前
Claude Code 官方已支持Windows系统!手把手教你免费安装使用Claude Code
13033 8月前
Cursor代码生成器中文使用教程,Cursor新手入门完全指南,全网最全面详细的Cursor使用教程
12313 1年前
手把手教你在VS Code & Cline/RooCode 中使用Kimi K2 模型,配置实录+开发实战体验
12207 8月前
Cursor进阶指南:如何解决Cursor上下文长度的限制超出后”降智“问题
10968 10月前
手把手教你在Claude Code 中使用Kimi K2 模型,超简单配置教程分享
10189 8月前

文章目录

关注「苏米客」公众号

订阅推送更及时,手机查看更方便
分类排行
1 Anthropic 为 Claude Code 加入自动记忆:MEMORY.md 实测体验
2 Claude Code CLI 支持 Worktree:多分支并行独立工作指南
3 Claude Code 117 个功能详解:从斜杠命令到子代理,完整学习路线
4 OpenAI 提出 Harness Engineering:标准化文档结构 + 自动化验收,量化 AI 可读性评分
5 Claude Code 创始人再放狠货!15 个隐藏功能曝光
6 Claude Code v2.1.90 深度解析:19 项变更逐一拆解
7 立即停用!Axios 惨遭投毒!
8 Anthropic 源码泄露分析:1902 个文件揭示 Claude Code 的 Harness 工程真相
9 Claude Code 源码深度分析:5000 行上帝组件与 89 个 Feature Flags 的技术债
10 OpenAI 为 Claude Code 推出官方插件:7 个命令实现代码审查 + 任务委派
©2015-2024 苏米客XMSUMI 版权所有 · WWW.XMSUMI.COM 闽ICP备14005900号-6
微信文章助手 程序库 免费影视APP 免费字体下载 Axure RP 10 免费Axure模板 Axure元件库下载 申请友联