欢迎回来

登录 EAKE AI,继续您的智能之旅

忘记密码?
还没有账号?立即注册

Agent Deck实战指南5:Git Worktree,让AI会话和Git分支并行跑

2026-08-13 · 入门教程 · 有封面图
用 Git 分支做开发的同学,可能都遇到过这个问题: Claude Code 正在一个分支上跑一个功能,做到一半,来了一件更急的事。你想开一个新的分支处理新任务,但现在的分支还没到可以提交的程度——要么 stash 起来,要么硬切分支把改动带走,两个选择都不理想。 Git Worktree 就是来解决这个问题的。而 Agent Deck 把它带进了 AI 编程工具的上下文管理里。

Git Worktree 是什么

正常情况下,一个 Git 仓库只能有一个工作目录。你 checkout 到哪个分支,这个目录就显示哪个分支的内容。 Git Worktree 打破了这一点。它允许你从同一个仓库创建多个工作目录,每个目录对应一个不同的分支,同时存在,同时工作,互不干扰。 ```bash # 在主仓库里 git worktree add ../my-feature-branch feature # 现在你有两个目录了: # 原目录 = main 分支 # ../my-feature-branch = feature 分支 ``` 每个工作目录是独立的 Git 状态,但共享同一个 .git 对象库,所以不占多少额外的磁盘空间。

为什么这对 AI 编程工具很重要

Claude Code 这类工具,是跟工作目录强绑定的——它在哪个目录启动,就会读取那个目录里的代码、上传上下文、修改文件。 如果你用普通 Git 分支切换: - 切走 → Claude Code 的上下文全部丢失 - 要么 stash → 上下文存在栈里,需要手动恢复 如果你用 Git Worktree: - 主分支上 Claude Code 继续跑 - 新开一个 worktree,切到新分支 - 在新 worktree 里再启动一个 Claude Code 实例 - 两个 Claude Code 分别在各自的分支上工作,上下文互不干扰

Agent Deck 怎么帮你管 Worktree

Agent Deck 有一个 worktree 命令,可以在 TUI 界面里直接操作,不需要记 Git 命令: ```bash # 查看当前仓库的所有 worktree worktree list # 新建一个 worktree 并切换 worktree add feature/my-feature # 切换到某个 worktree worktree checkout my-feature # 清理一个不需要的 worktree worktree prune my-feature ``` Agent Deck 还会自动识别当前工作目录属于哪个 worktree,在会话列表里标注出来。

一个实际场景

你的项目在 main 分支,Claude Code 正在重构登录模块,代码改了一半。 突然来了一件紧急任务:修一个线上 bug,必须在 hotfix 分支上做。 没有 Worktree 的情况下: 1. 把登录模块的改动 stash 起来 2. 切换到 hotfix 分支 3. 修 bug,提交 4. 切回 main 5. unstash,继续改登录模块 Context 丢了两次,中间接了个急活,整个节奏被打断。 有 Worktree + Agent Deck 的情况下: 1. 在 Agent Deck 里运行 `worktree add hotfix-branch hotfix` 2. 新开一个 worktree,切换到 hotfix 分支 3. 在这个 worktree 里启动一个新的 Claude Code 实例 4. 修 bug,提交 5. 回到原来的 worktree,Claude Code 的上下文完全没变,继续改登录模块 两个任务并行,上下文各自独立,不互相影响。

适合用 Worktree 的场景

- 同时在做一个功能和一个 hotfix - 需要在两个分支之间对比代码(打开两个 worktree 对着看) - AI 工具在一个分支上跑着长任务,不想中断,但又需要临时切换分支做点别的 - Code Review 场景:开一个 worktree 专门 checkout 别人的 PR,对照自己的代码看

注意限制

Git Worktree 不是万能的: - 同一个文件在两个分支都改了,在 worktree 里会看到冲突——需要手动处理 - 如果一个分支在强制 push 或 rebase,其他分支的 Worktree 状态可能会乱 - 不要在一个 worktree 里再创建 worktree 的嵌套结构 另外,Agent Deck 的 worktree 功能需要 Git 2.x 以上版本,大多数系统自带的 Git 应该都满足。

下期预告

Agent Deck 系列最后一篇:Agent Deck + GenHub 联用方案,一个管配置、一个管运行,怎么搭配效率最高。

评论区

发表评论