원문 캡처 · newsletter.pragmaticengineer.com
원문 캡처 · newsletter.pragmaticengineer.com

앤스로픽은 코드 변경 병합량이 하루 3만 건을 넘자 Git을 대신할 자체 버전 관리 시스템 Scion을 만들었다. 회사는 모노레포 전체를 Scion으로 옮겼지만, 코드 공개를 거부한 이유와 관련해 메타의 오픈소스 시스템 Mononoke를 베꼈다는 공개 비판도 받았다.

앤스로픽에 따르면 하루 병합 건수는 2026년 5월 평균 약 2,500건에서 9월 3만 건 이상으로 늘었다. 모노레포의 작업 사본은 25GB이며, 지속적 통합(CI)만으로 하루 약 2,500만 번 체크아웃이 발생했다. 엔지니어 한 명이 보통 10~15개의 Claude 에이전트를 병렬로 사용하는 것도 변경량 증가의 배경으로 소개됐다.

앤스로픽은 사내 클라이언트가 거의 항상 온라인인 환경에서는 오프라인 작업을 고려한 Git의 설계가 비효율을 낳았고, 저장소 복제본인 미러를 수백 개 운영해도 저장 공간이 한계에 이르면 확장하기 어렵다고 설명했다. 자체 시스템 Scion과 코드 검토·관리 도구 Antique를 함께 만들었다.

Scion은 저장소 전체를 담는 서버 노드와 Google Spanner에 저장하는 변경 집합(changeset), Google Cloud Storage에 저장하는 대용량 파일로 구성된다. 서버와 클라이언트는 Rust로, Antique의 백엔드는 Go로, 프런트엔드는 React로 작성됐다. 앤스로픽은 데이터 복제본 수를 늘리고 여러 지역에 복제하도록 바꿨지만, 구체적인 복제본 수는 공개하지 않았다. 데이터베이스 전체 백업과 파일의 소프트 삭제를 유지하고, Spanner의 특정 시점 복구 기능도 사용한다고 밝혔다.

앤스로픽 측 닉 G(Nick G)는 모든 구성 요소가 자동 확장될 수 있지만, 올해 병합량이 10배 넘게 늘어난 동안에도 확장이 필요하지 않았다고 말했다. 저장된 데이터는 콘텐츠 주소 지정 방식으로 관리돼 변경되지 않으며, 캐시 계층이 대부분의 작업을 처리한다는 설명이다. 시스템을 만들고 운영하는 팀은 엔지니어 7명으로, 이 가운데 4명이 Scion의 서버와 클라이언트를 맡았다. 앤스로픽은 모노레포 전체를 Git에서 옮겼고, 모노레포 밖의 작은 저장소들도 이전 중이라고 밝혔다.

자체 시스템을 공개하지 않은 이유와 표절 의혹

닉 G는 Scion을 오픈소스로 공개하지 않은 이유로 작은 팀의 작업 여력이 부족하다는 점을 들었다. 공개만 하더라도 제대로 준비하려면 시간이 들고, 코드가 자주 바뀌는 데다 마이그레이션에만 필요했던 Git 호환 계층도 아직 제거 중이라는 설명이다. 대신 앤스로픽은 설계 원칙과 데이터 구조를 소개한 글을 공개하고, GitHub·GitLab·오픈소스 커뮤니티와 Git 확장 방안을 논의하고 싶다고 밝혔다. 대부분의 팀은 Git을 떠날 필요가 없지만, 변경 집합과 파생 데이터, 체크아웃 프로토콜은 Git이 참고할 수 있다고 덧붙였다.

하지만 Mononoke의 제작자는 Scion이 메타의 오픈소스 시스템 Mononoke와 Bonsai 데이터 모델을 의도적으로 베꼈다고 주장했다. 그는 두 시스템의 유사성이 파생 데이터 개념을 넘어 전체 데이터 모델과 주변 구조에도 걸쳐 있다고 밝혔다. 앤스로픽의 최초 게시물에는 Mononoke에 대한 출처 표시가 없었으며, 비판이 제기된 뒤 각주로 출처를 추가했다. 이는 Mononoke 제작자의 주장으로, 기사에 인용된 자료만으로 독립적으로 확인된 사실은 아니다.

대규모 기업의 자체 버전 관리 사례

구글은 Git이 만들어지기 전부터 Perforce를 사용했고, 규모 확장 문제를 겪은 뒤 2011~2012년 무렵 자체 시스템 Piper를 만들었다. 메타는 Mercurial을 거쳐 자체 시스템 Sapling을 개발하고 공개했다. 메타는 Sapling 저장소와 서버 구성 요소인 Mononoke를 오픈소스로 공개했다. Sapling 문서는 이 시스템이 Mercurial에서 시작해 클라이언트-서버 구조로 전환했다고 설명한다.

이 사례가 모든 기업에 자체 시스템이 필요하다는 뜻은 아니다. 기사에서는 Git 호환 버전 관리 제품을 내세운 Entire, Cursor Origin, Code Storage도 언급한다. 앤스로픽의 사례는 에이전트 활용으로 코드 변경량이 급증할 때 기존 도구가 병목이 될 수 있음을 보여주지만, 자체 시스템 구축이 일반적인 선택이 될지는 아직 불확실하다.