gitのコミットログを汚さない方法
gitでは不都合な歴史を削除することができる。
つまり、不要なコミットログを消したり、最後のコミットに修正を追加するということもできる。
これらの機能を利用して、共有リポジトリにpushする前に、コミットログをきれいにしておきましょう。
最後のコミットに追加 or 最後のコミットを修正
-
- amendオプションをつけてgit commitするだけ。
git commit --amend
または、「git reset --soft HEAD^」で、直前のコミットを取り消して、まとめてコミットするという手もある。
git commit --amend --author="Your Name <your-email-address>"
で、コミッターを修正することもできる。
古いコミットログを削除する
git rebase -i ブランチ名で過去のコミットを編集できる。
git rebase -i HEAD~4
と打てば、直前の4つのコミットを編集できる。
例えば、以下の様に表示される。
pick bf953b8 last commit pick d08f543 oops! pick 8adbebc second commit pick 9e87ef2 first commit
ここで、pickをsquashに変えればそのコミットはその直前のコミットにねじ込まれる。
もちろん、ワーキングツリーのファイルはそのまま。