【Git】たくさんのCommitを何とかしたい

【スキル】エンジニア

Commit数が多くなって複数個にまとめたいとき、rebase -iを使ってまとめるという記事が出てきます。

複数のコミットをまとめる方法 - Qiita
0. まとめrebase -i でコミットをまとめる(例:git rebase -i HEAD~2)テキストエディタが開くので、集約先の pick はそのままにして、集約によって消したいコミット…

しかし、それが大量のコミット数になった時、一つ一つ確認するのは大変です!
なので今回は一気に少なくする方法をご紹介します!

下記のように16コミットありますが複数個に絞る場合を考えます。赤丸のCommitsを選択しましょう。

下記のようにたくさんのコミットが出てきます。一番新しいコミットから”refs #20250110 add Spring Boot”(069fff6)のコミットまでをまとめたいとします。その時は、一つ過去のID(2038780)をコピーしておきましょう。

下記の画像で赤線より上は、何もしてない時のgit logです。

git reset –soft [さっきコピーしたID]
※今回の場合、上記の画面でいうと2038780abc083e4a9340d81860c4221a67599c7eのID
を実行し、git logを確認すると、赤線の下のようにコピーしたIDのコミットよりも後のものが無かったことになります。

git reset
git status
を実行すると
ng-pain-log/
pain-log-management/
のフォルダがまだgit addされていないことになっています。

下記の画像のように、
git add ./ng-pain-log
を実行し、git commit すると、ng-pain-logの変更が反映されます!

残りは
git add .
で全部追加して、git commitします。

最後の肝で、
git push origin HEAD -f
つまり、今までのcommitを上書きするので “-f” を使って強制的にpushします。

Git HubのCommitを確認するとブランチがまとまりました!

皆さんも是非試してみてね!

タイトルとURLをコピーしました