前回の続きです〜
今回はコミットの修正についてです〜
コミットの修正(amend)
①コミットを修正する意味
前回まででファイルの内容を変更し、コミットをしたり打ち消しをしたりしてきましたが、その度に変更履歴が発生し、履歴が冗長になってしまっています〜
コミットするまでもない変更の場合は、コミットを新規に作成するのではなくコミット自体を修正することで、変更履歴を無駄に伸ばさないようにしたほうがいいです〜
②修正(amend)の使い方
とりあえず前回までで覚えたresetを使い、Second Commitまで戻します〜
$ git log commit fa4595ff783ca02c8162e49ad3253a6734e67377 Author: 名前 <メールアドレス> Date: Mon Aug 17 16:18:13 2015 +0900 Second Commit commit 29afc77b42799082ca80138015bde8e7be0f6bda Author: 名前 <メールアドレス> Date: Mon Aug 17 16:10:01 2015 +0900 First Commit
その状態でtest.txtファイルの最後の行に、「ううううう」というテキストを追記し、上書き保存します〜
あああああ
いいいいい
ううううう
となっている感じです〜
その状態で、
$ git commit -a --amend -m "Second Commit amended" [detached HEAD 03bd366] Second Commit amended
と入力して下さい〜
「-a」はgit add、「-m」はメッセージ登録でした〜
「--amend」は、新規コミットを追記するのではなく、現在のコミットを修正するオプションです〜
このオプションのおかげで、無駄にコミットの履歴リストが無駄に長くならなくなるというわけです〜
それでは、git logで変更履歴を確認してみましょう!
$ git log commit 03bd366b64c6c21481b27385edd6842fc6b261b8 Author: 名前 <メールアドレス> Date: Mon Aug 17 16:18:13 2015 +0900 Second Commit amended commit 29afc77b42799082ca80138015bde8e7be0f6bda Author: 名前 <メールアドレス> Date: Mon Aug 17 16:10:01 2015 +0900 First Commit
First Commit → Second Commit だった変更履歴が、
First Commit → Second Commit amended という変更履歴に修正されました〜
普通にコミットすると
First Commit → Second Commit →Second Commit amended という変更履歴になっていたので、1つ分短い変更履歴となりました〜
今回はここまでです〜
ありがとうございました〜