Gitコミット分割が「git history split」で簡単に

Splitting a Git Commit

Gitコミットを分割する新しいコマンド「git history split」が紹介されています。このコマンドは、指定したリファレンスのコミットをハンク単位で分割し、最初のコミットに含める変更を対話的に選択できます。その後、エディタで2つのコミットメッセージを編集できます。従来の方法は複雑で、Stack Overflowの古い回答が多くの票を集めていますが、新しい回答は正しいアプローチを示しているにもかかわらず、わずか2票しか得られていません。

これ以上簡単な方法はありません。
  1. opello

    対話的リベースを「古くて面倒な」アプローチと呼び、Git 2.54(2026年4月20日、ほんの数ヶ月前)の新しく実験的な機能である`git history`を「正しいアプローチ」と対比させるのは、妙に極端な感じがします。私は対話的リベースで多くの作業を分割してきました。`git history split`を試せること、ここで知ったことを嬉しく思います。しかし、その華やかな表現は、まるで何年も前から存在する機能で、人々がまだ移行していないだけのように見えますが、実際は試すのが楽しみな新しい機能なのです。

  2. roelschroeven

    > P.S. コミット分割に関するStack Overflowの質問では、古くて面倒なアプローチが議論されています。20番目の回答が正しいアプローチを議論していますが、今日現在、賛成票はわずか2票で、面倒なアプローチの古いトップ回答の2656票と比較されています。

    現在は5票になっています。2656票にはまだ遠いですが、少なくとも正しい方向に進んでいます。

  3. diath

    それは知っておくと良いですね。私は通常、回りくどい方法でやっていました:コミットをソフトリセットしてから、`git add --patch`でハンクをステージングして複数のコミットに分割していました。

  4. jez

    これは比較的新しい機能です。私は最初にGit 2.54のGitHubリリースノートで知りました:

    https://github.blog/open-source/git/highlights-from-git-2-54...

    そして当時の議論:

    https://news.ycombinator.com/item?id=47837698

  5. mateusz834

    またはjjを使って、gitの心配をやめるのも良いでしょう

    jj split --interactive {ref}

この日のほかの記事

2026-08-18