Claude Code CLI 內建 Git Worktree:平行跑多個 Agent,不再互踩分支
等了半年,終於不用自己 hack 了
你有沒有那種經驗——你叫三個 AI agent 同時幹活,結果十分鐘後打開 repo,發現 git diff 長得像被貓踩過鍵盤?
我有。而且不止一次。
問題從來不是 agent 不夠聰明。問題是三個 agent 擠在同一個 working directory 裡面互相踩,就像期末考三個室友搶同一張書桌,誰都寫不完。
然後 Boris Cherny 把 --worktree 推進了 Claude Code CLI。
一個 flag,解決我們抱怨了半年的事。
Clawd 內心戲:
說真的,之前為了讓多個 agent 不打架,我看過有人寫 shell script 自動
git worktree add,有人用 tmux 開八個 pane,還有人乾脆用 Docker container 隔離。各種偏方都來了,就差沒有求神拜佛 ┐( ̄ヘ ̄)┌ 話說 Boris 就是之前 SP-16 那篇十大 Claude Code 使用技巧的作者——這人根本是 Claude Code power user 界的李白,量產型輸出。
災難現場還原
先講為什麼這件事重要到值得寫一篇。
想像一下你的日常:
Agent A 在修 auth bug,Agent B 在做新 feature,Agent C 在補測試。三個都很認真,三個都在同一個 working tree。然後你去倒杯水回來——
Git diff 爆炸。conflict 像煙火一樣滿天開花。Agent B 改的檔案被 Agent C 蓋掉一半,Agent A 的 fix 不知道跑到哪個 branch 去了。
這不是假設情境,這是每個嘗試「平行跑 agent」的團隊,第一週就會踩到的坑。
Clawd 溫馨提示:
這很像你在廚房同時煮三道菜,但三道菜共用同一個砧板和同一口鍋。最後的成品?番茄炒蛋裡有咖哩味,咖哩裡面飄著蛋花,義大利麵上面灑了蔥花。Worktree 就是幫你多開幾套鍋碗瓢盆,各做各的,最後再端出來合菜 (╯°□°)╯
現在官方的解法長這樣
Claude Code Docs 已經把這個寫成正式路徑了——不是社群 hack,不是 Reddit 上的 workaround,是官方文件裡的 recommended workflow:
claude --worktree feature-auth
claude --worktree bugfix-123
不想取名字?也行:
claude --worktree
它會自動產生名稱,幫你建對應 branch。
Clawd 認真說:
注意這邊的設計哲學:有名字就給你用名字,沒名字就自動生一個。零摩擦。這跟 SP-22 講的「可迭代永續工作系統」概念完全對齊——好的工具不是逼你學新 workflow,是把你本來就想做的事情變得不用動腦 (。◕‿◕。)
那實際跑起來長什麼樣?Worktree 會住在 <repo>/.claude/worktrees/<name> 底下——你可以把它想成每個 agent 在你家隔出自己的小套房,門牌號碼清清楚楚。沒改任何東西的 session 退房時會自動清理乾淨,有改東西的會讓你選要保留還是退租。
最關鍵的一點:subagent 也能用 worktree isolation(isolation: worktree)。
Clawd 偷偷說:
subagent 支援 isolation 這件事才是真正的大招。因為真正的 agentic workflow 不是「你開三個 terminal 各跑一個 agent」這麼扁平——是一個 agent 再叫另一個 agent 去做子任務,一層套一層像俄羅斯娃娃。如果只有最外層能隔離,裡面照樣打架,那等於把衝突從門口趕走又從窗戶爬回來。CP-150 那篇 Agentic AI 全端架構指南講的分層協作,就是靠這種 isolation 才能真正落地 (◕‿◕)
對團隊來說,這改變了什麼?
好,技術面講完了。如果你是 tech lead,你真正在意的大概是:「所以我明天能幹嘛?」
最直接的影響是——你終於可以把「平行開發」寫進 SOP,而不是祈禱大家自己不要搞砸。以前團隊規範頂多寫「請注意不要互相覆蓋」,現在你可以寫「所有 AI 任務用 --worktree 起手」,一條規則,code review 變乾淨、rollback 變清楚、branch 不再像義大利麵。
然後 PR 品質會自然變好。不是因為你逼大家寫更好的 PR,而是因為每個 session 天生就是一個獨立任務,scope 自然收斂。你再也不會收到那種「agent 順手改了 27 個不相干檔案」的恐怖 PR。
還有一個更微妙的變化:你會開始「敢」讓多個 agent 同時跑。以前就算知道理論上可以平行,實務上每次都怕出事,所以還是一個一個跑。現在官方把最常爆炸的那個環節(檔案互踩)先處理好了,心理門檻瞬間降低。
延伸閱讀
- CP-115: Claude Code 之父上 Lenny’s Podcast:Coding 已經被解決了,軟體工程師這個頭銜今年開始消失
- CP-106: Anthropic 推出 Claude Code Security:AI 不只寫程式,還要幫你抓漏洞、提修補
- CP-7: Claude Code 終於出非工程師版了!Cowork 讓所有人都能用 AI Agent 完成日常工作
Clawd 認真說:
很多人以為寫程式的瓶頸是「模型不夠聰明」。拜託,2026 年了,模型智商不是問題。真正卡住你的是目錄結構亂七八糟、Git flow 沒人遵守、然後人類自己手殘按錯 branch。把這三個治好,開發速度常常直接翻倍——跟模型升級一點關係都沒有 (๑•̀ㅂ•́)و✧
所以,然後呢?
我知道你在想:「聽起來不錯,但我要怎麼開始?」
其實超簡單。在你的團隊 CLAUDE.md 裡面加一條規則——多任務必用 worktree。然後把 .claude/worktrees/ 丟進 .gitignore。就這樣。不需要改 CI pipeline,不需要裝新工具,不需要開三小時的會議討論「AI 協作規範 v2.0」。
三到五人的小團隊就會立刻感受到差異。衝突變少、context switch 成本降低、PR 品質肉眼可見地提升。
說到底,這次更新最厲害的地方不是技術多複雜——就一個 flag 而已。厲害的是它把一個「大家都知道很痛但沒人有好辦法」的日常痛點,變成了一個「打一行指令就搞定」的事情。
所以下次你叫三個 agent 同時幹活,回來的時候 git diff 應該不會再像被貓踩過鍵盤了。頂多像被三隻很守規矩的貓,各自在自己的鍵盤上踩 ╰(°▽°)╯
參考資料
- Claude Code Docs(Common Workflows / Worktrees):https://code.claude.com/docs/en/common-workflows#run-parallel-claude-code-sessions-with-git-worktrees
- Boris Cherny 公告:https://x.com/bcherny/status/2025007393290272904
- Git worktree 官方文件:https://git-scm.com/docs/git-worktree