コミットをまとめる
コミットをまとめるにはGitのrebaseを使用する。
(ほかにも方法があるが割愛)
まず下記のコマンドでログを表示。
git log --oneline
例としてこのようなログが表示されたとする。
C:\test>git log --oneline 6b78b9d last commit d12871a test3 db92104 test2 e4ae077 test1 fe87ecf first commit
今回はtest1, test2, test3のコミットをまとめてtest allにする。
まず以下のコマンドを入力。
git rebase -i fe87ecf
するとテキストエディタが起動してこのような内容が表示される。
pick ~の中にfe87ecf first commitが含まれていないのはgit rebase -i fe87ecfはfe87ecfよりあとのコミットを対象とするから。
pick ~の一覧はgit logの一覧とは順番が逆になっていることに注意。
次にtest2, test3のpickをsに変更。
pick db92104 test2 → s db92104 test2
pick d12871a test3 → s d12871a test3
こうしてpickをsに変更することで下図のようにtest1にまとめられる(というイメージで覚えると理解しやすい)
上書き保存して閉じるとテキストエディタにコミットのメッセージが表示される。
このまま閉じればtest3, test2, test1のコミットはtest1というメッセージでまとめられる。
今回はtest allに変更してまとめたいのでtest1をtest allにして上書き保存をしたら閉じる。
以上の手順が完了するとこのようにコミットがまとめられる。
90a43ad last commit c8f1922 test all fe87ecf first commit