色々取り消したいとき
ローカルリポジトリ
間違ったCommit
をしてしまったとき
git reset --soft <コミットID>
該当のコミットに移動し、ステージング
コミットメッセージを直したい、コミットし直したいときに使用する
ステージングしたファイルはステージングされたまま
git reset --mixed <コミットID>
該当のコミットに移動し、
コミットをまとめてやりすぎたときとかに使用する
コミットの取り消し+ステージングされたファイルも取り消される(addする前になる)
git reset --hard <コミットID>
間違えて違うブランチで作業してたときとかに使用する
変更したファイルそのものが取り消される
リモートリポジトリ
間違ったコミットをPush
してしまったとき
git revert <コミットID>
該当のコミットの変更を取り消ししたコミットができる
git reset
を使ってしまうと色々厄介なことになる
revert
すると、コミットの履歴は残りrevert
したというコミットが作られる(仕方ない)