前のコミットにファイルを追加する
作業中のブランチをすでにプッシュしている場合は、最初にmanページを参照してください。特に、次の点に注意してください。
他の人が作業に基づいているブランチをリベース(または他の形式の書き換え)することは悪い考えです。その下流にいる人は、手動で履歴を修正する必要があります。
ただし、ブランチをプッシュしていない場合は、危険ゾーンに入る準備をしてください。
コミットハッシュを見つける
まず、追加するコミットのコミットハッシュを知る必要があります。これはで示されgit log
ます。実際には、追加するコミットの前にコミットを指定する必要があります。(変更するコミットのスライスへの開始インデックスと考えることができます。)を実行することで、正しいコミットがあることを確認できますgit log -1 HEAD~n
。ここで、「n」は、適切なコミットが行われるまでインクリメントする整数です。または、数えることもできますが、実際にはそうではありません。
ただし、カウントする場合は、少なくともgit log -1 HEAD~5
、カウントが何であれ、正しいコミットがあることを確認してください。追加したいコミットが表示されないはずです。
危険、へぇ
これで、を実行する準備が整いましたgit rebase -i HEAD~5
。または、コミットハッシュが何であれ。これにより、お気に入りのテキストエディタと編集するファイルが表示されます。このファイルは、rebaseコマンドのToDoリストです。ファイル内のコメントは、どのようなオプションがあるかを示しています。追加したいコミットのある行を見つけて、その行で「pick」を「edit」に変更するだけです。次に、ファイルを保存して閉じます。
編集するように指示したコミットに達すると、リベースは停止します。を実行して、git status
提供される追加情報を確認します。ファイルをステージングしgit add .
て、ファイル名が何であれ、コミットに追加します。
次に、を実行しますgit commit --amend
。これにより、編集するために選択したコミットが修正されます。
最後に、を実行しgit rebase --continue
ます。
疑わしい場合は、Linuxで、man git-rebase
またはによって出力されたドキュメントを読んで詳細を確認できますgit --help rebase
。