Gitでパニくった時の対処法

Git#commit#git#reset#revert

この記事は12年以上前に書かれたものです。内容が古くなっている可能性があります。

よくGitのコマンドでパニくる事ってあと思います。

少なくとも私は・・・。

またよく忘れてしまうので、備忘録として残します。

編集内容を戻したい(git add前)

こんな時はこれで一発です。

git checkout [ファイル名]

これは楽チンですね。

編集内容を戻したい(git add後で、 git commit前)

単純にaddの取消はこちら。

git reset HEAD

また、ワーキングツリーの変更も含めて戻す場合はこちら。

git reset --hard HEAD

これまた楽チンですね。

編集内容を戻したい(git add後で、 git commit後)

このあたりになるとゾっとする私・・・。

では単純にコミットだけを戻す場合はこちら。

git reset --soft HEAD^

また、コミットもindexもワーキングツリーも戻す場合はこちら。

git reset --hard HEAD^

プッシュされているコミットを戻す

こちらはまず、以下で戻すポイントのSHAを確認

git log

commit xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
・
・
・

上記でいうところの、xxxxxxxxxxxxxxx…..

これを確認できたら以下で戻す。

git revert xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

とりあえずリモート状態へ戻す

最終手段はこちら。

git reset --hard origin/master

上記の「master」は戻したいブランチ名になります。

あまり作業戻しはしたくないですね。