主要内容
▶ Anthropic近日在工程博客中表示,公司打造了自有代码管理系统“Scion”,仅用5个月就取代了开发者标准工具Git。
▶ 原因在于代码量激增。Anthropic每天合并的代码变更从5月平均约2500项增至9月超过3万项。Claude开始代替人编写代码后,原本按人类工作速度设计的工具已难以支撑。
▶ 迄今为止,仅代码修改记录就有100GB,每天下载代码达2500万次。数百台Git镜像服务器也不够用。Scion以“使用端始终在线”为前提,由服务器承担所有计算,只向客户端发送所需文件。
Anthropic近日在工程博客中表示,公司打造了自有代码管理系统“Scion”,并在5个月内淘汰了开发者标准工具Git。

Anthropic抛弃了全球开发者普遍使用的标准工具Git。
Anthropic于当地时间13日表示,公司近日在工程博客中宣布,已开发出自有代码管理系统“Scion”,并在5个月内将公司全部代码迁移至新系统。此举背后有其原因:面向人类设计的工具,已经跟不上AI编写代码的速度。
Git是由Linux创始人林纳斯·托瓦兹于2005年开发的代码管理工具。它能够记录谁在何时修改了哪一行代码,并将多人修改的代码合并在一起。
全球大多数开发者都在使用Git,GitHub、GitLab等服务也都建立在Git之上。但Anthropic判断,Git已不再适合自身的规模。
◆ 四个月增长12倍,每天合并3万项
Anthropic表示,编写代码已不再是瓶颈。Claude可以自主开展研究实验、改进复杂程序,还能从零开始构建新服务。瓶颈转移到了按照人类速度设计的开发基础设施上,包括代码仓库、构建流程和自动化测试。
Anthropic将公司的全部代码存放在一个代码仓库中。5月,每天合并的代码变更平均约为2500项;到9月,这一数字已超过3万项,短短四个月增长了12倍。Anthropic解释称,代码合并需求几乎没有上限,每消除一个瓶颈,代码便会随即大量涌入。

代码仓库的规模也变得难以承受。仅主分支上,代码修改后留下的变更记录就接近100GB;当前代码的压缩副本也超过25GB。自动化测试每天下载代码2500万次。
这些数字还不包括开发者工作环境、AI智能体的工作空间和研究任务。如果按照Git的方式完整下载,每天的数据传输量将达到600PB(拍字节)。Anthropic曾依靠数百台Git镜像服务器维持运转,但随着合并数量不断增加,运营也愈发困难。
◆ Git面向个人,Scion专为AI打造
Git中的每个副本都是一套完整的代码仓库。即使断网,也可以查看变更记录、计算版本差异。这种设计适合带着笔记本电脑工作、独立开发的程序员。
但Anthropic代码仓库的使用者几乎全是AI智能体和自动化任务,而它们始终连接着服务器。面向离线使用的设计反而成了障碍。

Scion颠倒了这一前提。它假定使用端始终可以连接服务器,所有繁重工作——查询变更记录、创建新变更记录以及合并等——都由服务器完成。客户端只需下载所需文件、写入磁盘,并监控后续变化。服务器端也没有完整的代码仓库副本;数据分散在多台服务器上,各个组件都可以独立扩容。
Scion还将记录一项代码变更的成本设计为与变更量成正比,而非与整个代码仓库的大小成正比。只有这样,服务器才能承接每天3万项变更。自动化测试无需下载全部代码,只需向服务器询问“这两个版本有什么差异”,并接收答案。只有确实需要文件时,才下载相关目录。
在超大型代码仓库系统方面,谷歌的Piper和Meta的Sapling此前已有先例。Anthropic表示,公司参考了这些经验。

◆ 服务器资源降至原来的二百分之一,下载从几分钟缩短到几秒
与原有Git镜像服务器体系相比,Scion服务器所需的CPU和内存资源仅为二百分之一。自动化测试和研究任务下载代码的时间,也从几分钟缩短至几秒。
自动化测试服务器的容量有25%因此得到释放。每个环节的缓存直接处理请求的比例超过99%。
Anthropic还在同期开发了代码审查工具“Antique”、代码搜索和访问权限体系。整个项目由7人完成。Anthropic表示,按以往的方式,这项工作可能需要公司投入更多工程师,耗时数年。

◆ AI写代码比人更出色
Anthropic表示,Claude既是造成问题的“元凶”,也是解决问题的帮手。Claude大量生成代码,导致Git难以支撑;与此同时,Anthropic又借助Claude迅速打造了新系统。
一个实际案例是,Anthropic需要开发一款将Git代码迁移到Scion的程序。今年年初,Anthropic开发团队曾手动编写了这个程序。团队原本觉得效果不错,但在公司刚开始内部使用Claude Mythos早期版本时,他们只说了一句“试着重新写一遍”,便把任务交给了它。
新程序的内存占用只有原来的二十分之一,速度则快了4倍。它甚至自行遵守了说明文档中没有写明的规则,例如数据应按什么顺序迁移。
参与开发Scion的工程师一致承认,Claude写代码比自己更出色。但这并不意味着开发者无事可做。系统整体架构、多个系统如何协同、选择哪种设计,以及系统要能承受多大规模,仍由人来决定。
Anthropic表示,目前所有由Claude修改的代码仍由开发者审查。不过,开发者不再像过去那样逐行阅读,而是关注代码为何这样修改、方向是否正确。
Claude加快了代码编写速度,测试数量也随之增加。Anthropic称,Scion是公司开发的代码中经过验证最多的系统之一。Claude找出了专家可能需要花几天甚至几周才能发现的性能优化点,第二天又发现了新的改进点。
Anthropic还把系统监控交给了Claude。团队在公司内部通讯工具Slack中创建了多个频道,并在每个频道里安排一个Claude。
每个Claude只负责一个组件,整天查看该组件的状态图表和记录,一旦发现异常便发出提醒。Anthropic称,它们就像是闲着没事不断刷新图表的资深工程师,因此被称为“超级粉丝”(Superfan)。它们能发现传统自动警报容易漏掉的细微异常。
◆ “6至12个月内,其他公司也会遇到同样的问题”

Anthropic表示,无意将Scion提供给其他公司。它并不是用来取代Git的工具。
除非是拥有数万名工程师,或AI大量生成代码的公司,否则没有必要使用Scion;而要使用它,就必须连同代码审查、搜索和自动化测试工具一起更换。Anthropic还表示,公司担心为了适配所有人,最终造出一个对谁都没有用的工具。
Anthropic也承认,自己属于特殊情况。公司运行Claude所需的内部成本,已经高到其他任何公司都难以承担。Anthropic表示,这么做既是为了加快开发,也是为了测试Claude的能力边界。
尽管如此,Anthropic认为,未来6个月至1年内,其他使用AI编写代码的公司也会遇到同样的瓶颈。如果每家公司到时都从头摸索,将是一种浪费。
因此,Anthropic表示,公司会分享开发Scion过程中积累的经验,其中一些也可以应用到Git上,并将与GitHub、GitLab和开源社区共同解决相关问题。
Anthropic指出,即使继续使用Git,也可以对服务器端进行不同的设计。开发者电脑上的Git和公司服务器上的Git,不一定非要以完全相同的方式运行。
Anthropic还提议,GitHub和GitLab应将“这段代码是谁修改的”“两个版本有什么差异”等问题的服务器端即时答复功能纳入标准。现在,要回答这类问题,必须先下载全部代码。
一般公司会在合并代码前运行测试,而其他人的代码则要排队等待测试完成。
Anthropic表示,在每天合并3万项代码的情况下,排队等待根本行不通,因为一次测试运行期间就会有数百乃至数千项代码被合并。因此,公司改为在代码合并后和部署前运行测试,而不是在合并之前测试。
Anthropic称,虽然同时提交的代码有时会彼此冲突,但Claude往往在人察觉冲突之前就已经修复了问题。