1. ホーム
  2. git

[解決済み] 過去の任意の2つのコミット間にコミットをインジェクションするには?

2022-04-20 23:40:49

質問

ローカル専用ブランチに以下のようなコミット履歴があるとします。

A -- B -- C

の間に新しいコミットを挿入するにはどうすればよいですか? AB ?

解決方法は?

OPの回答よりもっと簡単です。

  1. git rebase -i <any earlier commit> . 設定したテキストエディターでコミット一覧を表示します。
  2. 後ろに挿入したいコミットを探します(ここでは a1b2c3d ). エディターで、その行の pickedit .
  3. テキストエディタを閉じてリベースを開始します(変更を保存してください)。これにより、コマンドプロンプトで先ほど選択したコミット( a1b2c3d ) あたかもコミットされたばかりのように .
  4. 変更を加えて git commit ( NOT を修正することで、ほとんどの edit s). これは新しいコミットを作成します。 を選択します。
  5. git rebase --continue . これは連続したコミットを再生し、新しいコミットを正しい位置に挿入したままにします。

これは歴史を書き換えることになり、他の人がプルしようとすると壊れてしまうので注意してください。