HOME > > > >

reset

このフォームは現在のブランチヘッドを<commit>にリセットし、おそらく<mode>に応じてインデックス(<commit>のツリーにリセット)とワーキングツリーを更新します。 <mode>が省略された場合、デフォルトは--mixedです。 <mode>は次のいずれかでなければなりません。

git reset [mode] [commit]

--soft
--mixed デフォルト。HEAD、インデックスが対象。ワーキングツリーの変更内容は保持される。
--hard ワーキングツリー、インデックス、HEADが対象となる
--merge
--keep

ワークツリーでの変更を戻す

いろいろとファイルを更新したけどダメで最初の状態に戻したくなった時に使う。

  1. $ git reset --hard HEAD

ただしUntracked filesは残るのでこちらも削除したい場合は git clean を利用する。

最新のコミットを取り消し

HEADのコミットを取り消したい場合。間違って変な branch を merge してしまった場合とか。

  1. $ git reset --hard HEAD^

reset を 取り消し

ORIG_HEADはHEADがA->Bへ動いた場合、Aのコミットを指す

  1. $ git reset --hard ORIG_HEAD

addを取り消し

  1. $ git reset HEAD

参照サイト