大数跨境

Claude Code 写代码太快,Anthropic 五个月换掉 Git

Claude Code 写代码太快,Anthropic 五个月换掉 Git AINLP
2026-10-14
3
导读:AI 开始重做自己的基础设施

Anthropic 把自家主代码库的 Git 换掉了。

Claude 团队公开了这次迁移:七个人,用五个月做出版本控制系统 Scion、代码评审工具 Antique,连同代码搜索、权限管理等配套,把整个 monorepo 搬了过去。

Anthropic 把原因说得很直白:按人类规模设计的开发基础设施,已经成了 Agent 编程的瓶颈。


压力来自 Claude Code。5 月,公司平均每天合入约 2,500 项代码变更;到 9 月 9 日,单日已经达到 30,401 项。写代码越来越快,拉代码、合并、评审这些日常动作,开始跟不上了。

Anthropic 主代码库的每日合并变更数 蓝色为 Pull requests 橙色为 Antique change requests 黑线为七日平均

代码还没开始跑,先等仓库拉下来

Anthropic 的主分支历史接近 100 GB,压缩后的工作副本也超过 25 GB。仅 CI,每天就要做约 2,500 万次代码检出,还没算开发环境、Agent 沙盒和研究任务。

一次下载慢一点,开发者可以等;把同样的开销乘上几千万,就变成了机房里的大事。

他们并非一上来就重造 Git。浅克隆、稀疏检出、内部镜像、预先保存的仓库快照,都用过了。高峰时,内部跑着几百个 Git 镜像。代码变更继续加速,快照离最新主分支越来越远,部分仓库里的历史查询也越来越难维护。

Git 让每份完整克隆都能独立工作。开发者可以在本地看历史、算 diff、查 blame,不必一直连着服务器。

可 Anthropic 的客户端已经换了一批:绝大多数是全天在线的 Agent 和自动化任务,围着同一个权威代码库工作。离线能力仍是 Git 的长处,但给海量任务反复准备本地仓库,成了他们要卸掉的开销。

HumanLayer 的 Dex Horthy 也注意到了这层变化:如果代码会越来越自主、越来越快地被修改,这次源码管理的调整就很容易理解。

只取要用的代码

在 Scion 里,提交、合并、rebase、历史查询都交给服务器。客户端保留有限的本地缓存,只取需要的目录;它还支持虚拟化检出,真正读到文件时再把内容放到磁盘上。

比如,一个 CI 任务只想知道两次提交差了什么,可以直接问 API,不必先养着一份本地仓库。需要跑代码的任务才准备工作副本,也只取自己要用的部分。

提交的保存方式也变了。Scion 用 changeset 记录相对第一个父提交改了哪些文件,再指向按内容哈希保存的文件数据。文件历史、blame 等查询所需的索引,由服务器另外计算。

Scion 的 changeset 保存变更文件和内容地址 下方虚线目录树由服务器派生

大量任务还会读同一批代码。Scion 因此在计算节点放了一层共享缓存,再接区域缓存,缺少数据时才向上游取。一个节点上的任务可以复用已经拿到的内容。

Scion 的代码获取路径 节点缓存和区域缓存复用文件内容 缺失时再向上游请求

按 Anthropic 披露的内部结果,新基础设施的 CPU 和内存需求约为旧 Git 镜像体系的 1/200;CI 和研究任务取代码从分钟级缩到秒级,CI 释放了约 25% 的 CPU 容量。

Git 换了,评审也得一起换

跟着 Scion 一起落地的,还有内部代码评审工具 Antique。

Scion 支持目录级权限,评审工具则能表达更细的批准条件,把仅修改注释的请求与涉及敏感逻辑的修改区分开,让人把注意力放到后者。

合并队列也遇到了新问题:一次测试还没跑完,主分支可能已经又合入几百甚至几千项修改。团队没有照搬全局仓库锁的队列模式,而是加大合并后、部署前的自动化测试投入。并发修改仍可能冲突,这套做法也需要相应的检测和修复能力。

七个人做成,工程师还在管什么

Claude 既制造了这轮压力,也参与了重建。团队用早期内部版本的 Claude Mythos Preview 重写 Git 到 Scion 的导入管线,报告内存消耗降到原来的 1/20,速度提高到四倍。

但有些修改,工程师得拦下来。

迁移过程中,有系统为了查某项变更何时合入主分支,打算线性扫描提交日志;正确的信息已经在代码评审工具里。另一次对抗式评审过分担心内部服务不可信,推动 Claude 加了大量验证和复杂性,最后仍需要人把设计拉回来。

Anthropic 也没有建议所有团队换掉 Git。Scion 面向极大的 monorepo 和高产码量的 Agent 群,连评审、搜索、CI 都要配套迁移;公司的内部 token 投入也不是普通团队愿意承担的规模。

对于还在用 Git 的团队,更容易借鉴的是其中一部分:让服务器直接回答更多仓库问题,让任务按需取文件,让同一节点复用代码。先少搬几遍仓库,未必就要先换一套版本控制系统。

参考链接

  • Redesigning source control at Anthropic:https://www.anthropic.com/engineering/redesigning-source-control

【声明】内容源于网络
0
0
AINLP
一个有趣有AI的自然语言处理公众号:关注AI、NLP、大模型LLM、机器学习、推荐系统、计算广告等相关技术。公众号可直接对话双语聊天机器人,尝试对对联、作诗机、藏头诗生成器、自动写作等,查询相似词,测试NLP相关工具包。
内容 6068
粉丝 0
AINLP 一个有趣有AI的自然语言处理公众号:关注AI、NLP、大模型LLM、机器学习、推荐系统、计算广告等相关技术。公众号可直接对话双语聊天机器人,尝试对对联、作诗机、藏头诗生成器、自动写作等,查询相似词,测试NLP相关工具包。
总阅读35.8k
粉丝0
内容6.1k