本文へスキップ
MameTechNews
バックエンド

Git 2.56、競合解決専用のadd --resolvedとマージベース高速化

## POINTS

  • マージ中はgit add -uをやめ、マーカ検査付きのadd --resolvedに切り替える
  • 巨大リポジトリではプルリクエスト差分やマージ判定の待ちが短くなる見込みがかなり強い
  • path-walk再パックはホスト向けで、手元のgit gc既定は当面そのままでよい

オープンソースのGitプロジェクトは2026年9月28日、Git 2.56.0を公開した。GitHub Blogによると、104人以上が参加し、うち39人が新規だ。

実務向けの変更は競合解決の安全策である。git add --resolvedはインデックス上の未マージ経路だけを対象にし、コンフリクトマーカが残っていればインデックスを一切更新しない。git add -uが無関係なローカル変更まで載せる事故を防げる。マージベース探索も打ち切り条件を見直し、あるモノレポでは0.68秒が0.01秒、別環境では平均約20倍、最大約70倍になった。Linuxカーネルのgit merge-base --all v4.8 v4.9は16万7441ステップ・0.29秒から3887ステップ・0.01秒に落ちた。

サーバ側ではpath-walk再パックがbitmapとdelta islandと併用できるようになった。Fluent UIの再パック例では558.5MBが164.4MB(約71%減)になった。ホスト事業者が採用を検討できる段階で、手元の既定にはならない。日々の恩恵は--resolvedと高速化した共通祖先計算にあり、まずクライアント更新から入るのがよい。