分散型バージョン管理システムGitの開発チームは、最新バージョンとなる「Git 2.50」を6月16日(現地時間)にリリースした。
Git 2.50では、新たなオプション--combine-cruft-below-sizeが追加され、出力パックの最大サイズを指定する代わりに、既存のどのクラフトパックを結合するかを決められるようになっている。同オプションは、複数のクラフトパックに分散して、多数の到達不能オブジェクトが蓄積されているリポジトリで特に役立ち、既存のクラフトパックの結合によって、リポジトリ内のクラフトパックの数を徐々に減らせるようになる。なお、同オプションの導入にともない、--max-cruft-sizeの役割が変更され、--max-pack-sizeのクラフトパック固有のオーバーライドとして動作するようになった。
あわせて、増分MIDXチェーンにマルチパック到達可能性フォーマットがサポートされるようになり、それぞれのMIDXレイヤに独自の*.bitmapが生成され、これらのビットマップレイヤが相互に連携することで、MIDXチェーンの任意のレイヤにおける、特定のコミットの到達可能性情報を提供できるようになっている。同機能追加によって、リポジトリの規模に関わらず新たなコミットがプッシュされるたびに、新たな到達可能性ビットマップを迅速かつ効率的に追加することが可能になった。なお、同機能は現時点では実験段階であり、オブジェクトを増分マルチパックインデックスとビットマップに再パックする機能のサポートは、シンプルなレベルに留まっている。
さらに、バージョン2.33で導入されたマージエンジンORT(Ostensibly Recursive's Twin)が、Gitの古いマージエンジンであるrecursiveを完全に置き換えた。すでに、recursiveはGitのソースコードからも取り除かれている。
なお、2025年にGitは20周年を迎えた。
- 関連リンク
この記事は参考になりましたか?
- この記事の著者
-
CodeZine編集部(コードジンヘンシュウブ)
CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です