Scion Anthropic 推出的源代码版本控制系统,替代 Git
Scion是什么
Scion是Anthropic自研的版本控制系统,用于替代Git管理其巨型单体仓库。原因是Claude生成代码量4个月暴涨12倍,日均合并从2500次到3万次,Git基础设施基本无法应对。Scion针对智能体永远在线重新设计,客户端按需向服务器取数,提交、合并全在服务端完成,支持全水平扩展与稀疏检出。迁移后资源占用降为Git方案的1/200,检出提速两个数量级。

Scion的主要功能
- 变更集(changeset)替代 commit :用预写式日志条目记录相对父级的文件变更列表,服务器端创建、即时全局可用,无需打包、加锁或移动引用。
- 派生数据机制 :基于变更集递归构建 blame、路径历史、提交图跳表等索引,可热插拔新数据类型,支持即时或延迟计算,客户端无感知。
- 全 API 化的源码控制服务 :diff、merge base、blame 等查询全部通过 RPC 暴露,CI 和工具无需维护本地仓库副本。
- 分层缓存检出架构 :scion-daemon(节点级)→ scion-cache(区域级)→ scion-server(权威层)逐级缓存,各层命中率超 99%,检出从几分钟缩到几秒。
- 稀疏/虚拟化检出 :客户端只拉取请求目录的文件,按需实例化,文件内容只在实际读取时付费。
- 细粒度权限控制 :支持仓库级和目录级访问控制,配合 Antique 评审工具实现语义化的审批约束。
- 提交低成本、增量、无锁 :创建提交的成本与变更大小而非仓库大小成正比,引用更新仅为单条 Spanner 记录的原子操作。
如何使用Scion
Scion 是 Anthropic 内部系统,未公开发布,外部用户无法下载或部署。
Scion的核心优势
- 资源占用极低 :CPU 和内存占用仅为原 Git 镜像基础设施的 1/200。
- 检出速度提升两个数量级 :CI 和研究任务检出代码从几分钟缩短到几秒。
- 显著节省算力 :仅 CI 一项就释放出 25% 的 CPU 容量。
- 缓存效率极高 :每层缓存命中率超 99%,且无需长期状态,扩容简单。
- 提交吞吐极高 :无 packfile、无锁、无跨服务协同,可高吞吐接收变更集,支撑日均 3 万次合并。
- 免本地仓库 :所有源码控制查询通过 API 提供,CI 和工具不再需要维护本地副本。
- 全水平扩展 :无仓库完整实例、无全局状态瓶颈,每个组件可独立扩容。
- 维护成本近零 :无 packfile 概念,客户端和缓存都不需要做仓库维护。
- 细粒度安全 :支持目录级权限控制和语义化审批约束,敏感代码可在大仓库内得到保护。
Scion的项目地址
- 项目官网 :https://www.anthropic.com/engineering/redesigning-source-control
Scion的同类竞品对比
对比维度 | Scion(Anthropic) | Git
| 对比维度 | Scion(Anthropic) | Git |
|---|---|---|
| 设计前提 | 客户端永远在线,几乎全是 AI 智能体和自动化任务 | 客户端面向人类开发者,可离线工作 |
| 仓库副本 | 客户端无完整副本,本地仅有界缓存,按需取数 | 每个克隆都是完整的自包含仓库 |
| 提交方式 | 服务端创建提交、合并、变基,无需 push,无锁 | 本地提交后推送,推送涉及加锁与协商 |
| 工作单元 | 变更集(changeset),存相对父级的文件变更列表 | commit,存指向完整代码树的指针 |
| 查询能力 | blame、diff、祖先关系等全部经 API 暴露,免本地仓库 | 查询依赖本地仓库计算或厂商专有 API |
| 扩展方式 | 全水平扩展,无完整仓库实例,组件独立扩容 | 垂直扩展为主,巨型仓库需数百镜像横向硬扛 |
| 稀疏检出 | 协议核心能力:稀疏 + 虚拟化检出,按实际读取付费 | 支持稀疏检出,但需与浅克隆等能力复杂组合 |
| 缓存架构 | 三层分层缓存(daemon→cache→server),命中率超 99% | 无服务端缓存概念,客户端自行持有对象 |
| 仓库维护 | 无 packfile 概念,客户端与缓存均无需维护仓库 | 需定期 gc、打包等仓库维护操作 |
| 权限模型 | 仓库级 + 目录级访问控制,语义化审批约束 | 无内置目录级权限,依赖托管平台实现 |
| 离线能力 | 不支持,客户端必须在线 | 完整支持,离线可提交、查历史、切分支 |
Scion的应用场景
- AI 智能体高频提交代码 :智能体完成编码任务后直接通过 API 在服务端创建变更集,无需维护本地仓库,支撑日均数万次合并。
- CI 大规模免检出运行 :CI 作业直接调用 RPC 获取 diff、blame、merge base,甚至免检出执行写入,每天数千万次检出不再成为瓶颈。
- 大型单体仓库的多团队协作 :数万工程师共享同一仓库时,稀疏检出让每个人只拉取自己负责的目录,目录级权限保护敏感代码。
- 自动化运维与回归定位 :自动化 bisect 和 revert 流水线通过程序化接口查询提交祖先关系,大规模回滚有问题的变更。
相关工具
与本文相关的 AI 工具