開発ブログ

WWWクリエイターズが送る、Git、CSS、HTML、コマンドライン、Macの便利機能など、開発に関する役立ち情報発信します。気まぐれに更新。

git resetを取り消して、元に戻す方法。

最終更新:2017-07-03 by Joe

ブランチの歴史を書き換えるgit reset。間違って閉まっても、取り消して、元に戻す方法がgitにはあります。

git reflog – すべてHEADの移動記録

gitは、ブランチの先頭HEADや、それ以外のすべての参照の更新を記録しています。

git reflogコマンドを使えば、それらのすべての記録を閲覧できます。そして、望めばその時点に戻る事ができるです。まるでタイムマシンみたいです。

HEADの移動記録を閲覧する

あなたか間違ってgit reset して、ブランチの状態を誤って強制変更してしまっても大丈夫です。

気軽に「git reflog」を実行してみて下さい。デフォルトでは、HEADの移動がすべてリストされます。

なお、git reflog --allとすると、HEADだけでなく、すべての参照の移動を閲覧できます。

現在のブランチを元に戻す

過去の状態を取り戻すには、git reset -i を利用します。reflogで見つけた、戻りたい状態を指定子て下さい。

reset を実行したHEAD@{5}の直前HEAD@{6}に戻ります。

これでresetは取り消されて、元通りです。

参考リンク