Metaの大規模ソースコード管理システム「Sapling」がオープンソース化
Metaが10年間にわたり開発・使用してきたソースコード管理システム「Sapling」がオープンソース化されました。Git互換で基本的なコマンドは類似しており、すべてのコマンドがシンプルで使いやすいように設計されているとのこと。Saplingは2022年11月15日から一般向けに公開されています。
Sapling: Source control that’s user-friendly and scalable
https://engineering.fb.com/2022/11/15/open-source/sapling-source-control-scalable/
MetaはSaplingについて「ユーザビリティとスケーラビリティを重視した、Metaで使用されているソース管理システム」と紹介。GitやMercurialのユーザーにとって基本的な概念の多くがなじみのあるものであり、リポジトリの把握、コミット、ミスの回復といったワークフローが大幅に容易になるよう作られているそうです。
Saplingと互換性のあるサーバーと仮想ファイルシステムを組み合わせて使うと、Saplingは数千万のファイル、コミット、ブランチを持つMetaの内部リポジトリに対応できるとのこと。仮想ファイルシステムは将来的にオープンソース化される予定です。
SaplingはもともとMeta(Facebook)が社内向けの大規模なモノリシックリポジトリ(モノレポ)をスケールアップするために取り組み始めたプロジェクトでした。Metaで使われるような大規模リポジトリの管理は一般的なソースコード管理システムでは難しく、リポジトリの分割も機動性の観点から現実的ではなかったそうです。そのため、フリーソフトウェアであるバージョン管理システム「Mercurial」の拡張としてSaplingをスタートさせ、独自のシステムへと急速に成長させていったとのこと。
歴史的に多くのユーザーから不満があったという「一見すると単純なゴールに到達するためには、難解なコマンドを使わざるを得ない」といった点をSaplingは解決しており、さまざまな面でシンプルに仕上がっているとMetaは述べています。
Saplingにはリポジトリを一目で確認できる「Smartlog」というコマンドや、ミスを修正するさまざまなツール、スタック内のコミットを容易に編集するツールなども用意されています。
Metaは「ソース管理は現代の開発者にとって最も重要なツールの一つであり、GitやGitHubなどのツールを通じて、ソフトウェア業界全体の基盤となっています。私たちは世界クラスのソース管理体験を、構築するために多大な投資を行ってきました。今回、ユーザーはSaplingに組み込まれたGitサポートを使って既存のリポジトリのクローンを作成し、その様々な機能を試すことができます。これは、Saplingのシステム全体を世界に公開するための長いプロセスの最初の一歩です」と述べました。
・関連記事
OpenAIが高性能文字起こしAI「Whisper」を発表、日本語にも対応し早口言葉や歌詞も高精度に文字起こし可能 - GIGAZINE
ソースコードの「続き」を自動で補完する「GitHub Copilot」がすべてのユーザーに利用可能へ - GIGAZINE
6億種超のタンパク質構造を予測したAI「ESM-2」によるデータベースをMetaが公開、予測速度はAlphaFoldより60倍高速 - GIGAZINE
・関連コンテンツ