消えたGitコミットを復旧する
Gitを使っていると、誤って git reset --hard を実行してしまったり、rebaseの操作をミスしたりして、コミットが見えなくなることがあります。そんなときに役立つのが git reflog です。 git log が現在のブランチからたどれるコミット履歴を表示するのに対し、 git reflog はHEADが過去に指していたコミットの履歴を表示します。 そのため、resetやrebase、commit --amendなどによって通常の履歴から切り離され、見えなくなったコミットでも、reflogから見つけられる場合があります。 復旧するためには、まず git reflog で戻したいコミットを探します。対象が見つかったら、 git branch <復旧用ブランチ名> <コミットハッシュ> で復旧用のブランチを作成します。現在のブランチを変更しないため、安全にコミットを復旧できます。 reflogはローカルに保存される情報で、一定期間が経過すると期限切れとなり、削除されます。誤操作に気付いたときは早めに確認するとよいでしょう。 Git - メンテナンスとデータリカバリ HM インプラス株式会社