「你刚启动Claude做重构,你知道这要花上一阵子,也知道接下来会发生什么。」——Gregory Sanders这篇技术博客的开头,精准戳中每个用过AI编程工具的人。
要么干等,要么打断它。两个选项,同一个病根:你和AI共享一个工作目录,而目录一次只能承载一条思路。
![]()
这不是提示词能解决的问题
很多人第一反应是优化提示词、缩小任务范围、加强代码审查。但Sanders直接否定了这条路——这是物理约束,不是沟通问题。
两个实体同时编辑磁盘上的同一批文件,必然冲突。分支切换也没用:你切到main分支查个细节,Git要么因为脏树(dirty tree)拒绝切换,要么把AI正在改的代码强行带到错误分支。
想要的隔离,瞬间消失。
工作树:同一仓库,多个办公桌
Git worktrees(工作树)的解决方案很朴素:给AI单独开一张"办公桌"。
核心机制一句话:同一套Git数据库,多个独立工作目录,各自锁定不同分支。执行一条命令:
git worktree add .worktrees/myrepo-auth -b feature/auth
Git会在当前仓库内新建.worktrees/myrepo-auth文件夹,检出feature/auth分支,原目录完全不受影响。你的终端、编辑器、本地服务继续跑在原有分支上,仿佛什么都没发生。
关键细节:记得把.worktrees/写进.gitignore,否则新文件夹会被仓库自己追踪——逻辑上很荒诞,实践中很常见。
Claude Code更激进,原生支持--worktree(或-w)参数:
claude --worktree feature-auth
一键创建工作树并启动会话,AI直接在隔离环境里开工。
没人告诉你的 setup tax
但Sanders的真正发现不在技术机制,而在隐藏成本。
每个工作树都是完整文件系统视图,意味着依赖安装、环境变量、配置文件全要重新来一遍。Node项目的node_modules、Python的虚拟环境、IDE索引、构建缓存——这些在现代项目里动辄几GB的"基础设施",每开一张新桌子就要复制或重建。
他称之为"setup tax"( setup 税)。
对于人类开发者,这个税偶尔交一次还能忍。但对于AI Agent——它们可能需要频繁创建、销毁、切换工作树——税率高到不可接受。
Sanders的应对是自建工具包:符号链接共享依赖、环境模板快速克隆、脚本自动化配置。核心思路不是消灭成本,而是摊薄到可忽略。
为什么这件事值得现在关注
工作树不是新功能,Git 2.5(2015年)就已引入。但AI编程工具的爆发让它从"小众技巧"变成"基础设施问题"。
单人+多Agent的协作模式正在成型。一个Agent写测试,一个重构旧代码,人类审查合并——这种并行工作流需要真正的文件系统隔离,而非虚假的"分支切换"。
Sanders的判断很直接:Agent需要自己的desk(办公桌),而工作树是目前最轻量的实现方式。代价是显性的,但可控;收益是结构性的——它把AI从"串行阻塞"解放为"并行协作"。
下一步行动很具体:如果你用Claude Code,试试-w参数;如果用其他工具,手动创建工作树,测量你的setup tax,决定哪些成本值得自动化。这个测量本身,就是理解AI协作瓶颈的起点。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.