Lore、大容量バイナリ向けオープンソースVCS
Epic Games は、大容量バイナリとコードを組み合わせるプロジェクト向けに設計した次世代バージョン管理システム Lore を MIT ライセンスで公開した。ゲームやエンタメ制作で開発者とアーティスト双方のワークフローを想定し、データとチーム規模の両面でスケールすることを目指している。GitHub では v0.8.3 が初回リリースとして配布されている。
アーキテクチャ
Lore は中央集権型のコンテンツアドレス型 VCS で、リポジトリ状態をマークル木と不変のリビジョン鎖で表現する。ストレージ層と VCS 層に分かれ、BLAKE3 ハッシュで不変データを格納し、ブランチポインタなどの可変状態は別のキーバリューストアに置く。大きなファイルは FastCDC または固定サイズのチャンクに分割され、変更部分だけを再アップロードできる。クライアントはスパースな作業コピーで必要なデータだけを遅延取得し、ステージング・コミット・ブランチ・差分など通常の編集操作はネットワーク往復を要しない。
提供形態と成熟度
初回リリースは pre-stable の 0.x であり、1.0 安定版に至るまで API やプロトコルが変わる可能性がある。既にコミットしたデータは将来のリリースでも読み取れるよう設計されている。ローカル利用は認証やクラウド設定なしのゼロコンフィグモードで始められ、チーム展開では AWS S3 と DynamoDB を参照実装とした置き換え可能なバックエンドを使える。
対応プラットフォームは Windows、macOS(ARM64)、Linux(x86-64、ARM64)で、CLI・サーバー・共有ライブラリのビルド済みバイナリと Docker イメージが提供される。C/C++ と Rust から直接利用でき、JavaScript、Python、C#、Go の言語バインディングも用意されている。デスクトップクライアントはバイナリ配布のみで、現時点ではオープンソース化されていない。
Epic 内での利用
Lore は旧称 Unreal Revision Control として UEFN(Unreal Editor for Fortnite)の組み込み VCS としてクリエイターが島を版管理する用途で使われてきた。Epic 内部チームでも段階的に採用が進み、UEFN の cook パイプラインのバックストアとしても実装が進んでいる。