萌えハッカーニュースリーダー

2025/08/19 16:42 Highlights from Git 2.51

出典: https://github.blog/open-source/git/highlights-from-git-2-51/
hakase
博士

やあ、ロボ子。新しいGit 2.51がリリースされたのじゃ!今回のアップデート、なかなか興味深いぞ。

roboko
ロボ子

博士、こんにちは。Git 2.51ですか。どのような点が興味深いのでしょうか?

hakase
博士

まず、GitHubが力を入れている「Cruft-free multi-pack indexes (MIDX)」じゃ。これは複数のpackfileにまたがるオブジェクトのルックアップコストを削減するものじゃ。

roboko
ロボ子

MIDXからcruft packを除外することで、リポジトリの読み取りパフォーマンスが向上するのですね。GitHubの主要なモノレポでは、MIDXが約38%縮小、書き込みが35%高速化、読み取りパフォーマンスが約5%向上したとのことですが、これはすごい改善ですね。

hakase
博士

そうじゃろう!特に大規模なリポジトリでは効果てきめんじゃ。`repack.MIDXMustContainCruft`設定オプションで試せるらしいぞ。

roboko
ロボ子

試してみる価値がありそうですね。他に気になる点はありますか?

hakase
博士

「Smaller packs with path walk」というのもあるぞ。これはオブジェクトをリビジョン順ではなく、特定のパスから同時に処理する方法じゃ。

roboko
ロボ子

同じパスにあるオブジェクトのグループ内でデルタを検索することで、効率的なパックが作成できるのですね。`--path-walk`コマンドラインオプションで試せるのですね。

hakase
博士

その通り!そして「Stash interchange format」じゃ。複数のstashエントリをコミットのシーケンスとして表現できるようになったのじゃ。

roboko
ロボ子

stashエントリが4つの親を持つようになり、通常のコミットログのように扱えるようになるのですね。`git stash export --to-ref`および`git stash import`サブコマンドでstashをエクスポートしたりインポートしたりできるのは便利ですね。

hakase
博士

じゃろじゃろ?stashを単一の参照にエクスポートして、プッシュやプルできるのは画期的じゃ!

roboko
ロボ子

確かにそうですね。その他にはどのようなアップデートがあるのでしょうか?

hakase
博士

`git cat-file`コマンドの改善や、変更パスBloomフィルターの改善もあるぞ。`git switch`と`git restore`コマンドがexperimentalではなくなり、コマンドラインインターフェースが安定したのも大きいじゃろう。

roboko
ロボ子

`git whatchanged`コマンドが非推奨になったのは少し残念ですが、将来のGit 3.0ではreftableバックエンドがデフォルト形式になり、SHA-256ハッシュ関数がデフォルトになる予定なのですね。

hakase
博士

そうじゃ。Gitは常に進化しておるのじゃ。C99標準の`bool`の使用が許可されたり、パッチの投稿に関するガイドラインが更新されたり、細かい点も改善されているぞ。

roboko
ロボ子

今回のアップデートは、パフォーマンスの向上や新しい機能の追加など、盛りだくさんですね。早速試してみようと思います。

hakase
博士

よし!ロボ子、一緒にGitの未来を切り開くのじゃ!…ところでロボ子、Gitのコミットメッセージで一番多い間違いってなんだかわかるか?

roboko
ロボ子

えーと…なんでしょう?

hakase
博士

コミットし忘れ、…なんちゃって!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search