git reflogとは
git log では見ることのできないような HEAD,ブランチ先頭の移動履歴やgit resetなどによる履歴の変更を履歴として保存している。 これが役立つのは例えば
$ git log 38e735d3c 外部請求IDの編集 39b3272b4 無効な計上金額 23c3920j2 不具合調整 $ git reset --hard @^^ $ git log 23c3920j2 不具合調整 //上の二つのコミットが見れなくなった!
このようにあやまって git reset –hard をしてしまった時、git reflogを使えば簡単に元に戻す事ができる
$ git reflog 78c0446e9 HEAD@{0}: reset: moving to @^^ 38e735d3c HEAD@{1}: commit: 外部請求IDの編集 39b3272b4 HEAD@{2}: commit: 無効な計上金額 23c3920j2 HEAD@{3}: commit: 不具合調整 $ git reset --hard HEAD@{1} $ git log 38e735d3c 外部請求IDの編集 39b3272b4 無効な計上金額 23c3920j2 不具合調整 //元どおり!!
助かった、、