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