めちゃくちゃ細かいコミットを作成してしまった時などに使える、コミットログを綺麗にするコマンドを記載しておきます。
※自分用の備忘録のため分かりづらいかもです。もっと詳しく書いてクレメンスの場合はコメントください。
改変したコミットログは元に戻す事はできないので、十分に注意した上で実行してください。
また、今回の方法ではgit push -f
を使用しますが、強制pushして良いかはチームメンバーに確認しておいた方が不幸にならずに済むかもしれません。
強制pushはNGが基本かもしれませんが、私は駄々をこねまくってコミットログを偽装しまくっています。
コマンド
// コミットログを確認する
git log --oneline
// 一つにまとめたいコミットを、まとめて指定する
git rebase -i HEAD~n
// 一番上のコミットを残して、pickと記述されている箇所をsに変更する
// コミットメッセージは変更する必要なし
// pickをsに変更して:wqすると、コミットメッセージの編集に移行するので好きなコミットメッセージを入力する
// remoteにpushする
git push -f origin HEAD
以上です。
参考
もっと詳しく教えてクレメンスな方は以下を見ると幸せになれるかもしれません。