git reset と git revert についてメモ
git reset
もとに戻す。変更履歴は残らない。
指定したリビジョン以降のコミット全てを無かったことにする。
ex1. git reset HEAD^ --soft
ex2. git reset HEAD~3 --hard
ex1. 1個前に戻す。working directoryは無変更
ex2. 3個前に戻す。working directoryも戻す。
git add foo したファイルを以下の方法で取り消すことが可能
$ git reset HEAD foo
git revert
もとに戻すためのパッチを作成する。
変更履歴は残る。default で --hard がついている。
指定したリビジョンのコミットのみ無かった事にする。
ex3. git revert HEAD~2
ex3. 2個前のコミットのみをなかった事にする。
git reset はgit add を取り消すのにも使える。git add の取り消しはアンステージという。
git reset file_name