スポンサーリンク

【Git】誤って破棄したコミットを復元する方法

記事内に広告が含まれています。

誤ってGitのコミット破棄した時、かなり焦りましたが、復元は可能です。

Git Bashを使用して間違って破棄したコミットを復元する手順は、以下のようになります。

この例では、Gitのreflogcheckoutコマンドを活用して、破棄されたコミットを見つけ、それを新しいブランチに復元します。

スポンサーリンク

ステップ1 git reflogを使用してコミットを見つける

  1. Git Bashを開きます。
  2. 変更を破棄したGitリポジトリのディレクトリに移動します。
  3. git reflogコマンドを実行して、最近のコミット履歴を表示します。
cd "your-repository-path"
git reflog

この出力には、HEADが過去に指していた各コミットの短縮ハッシュ、コミットのタイプ(例えば、commitresetなど)、コミットメッセージが含まれます。

メッセージなどを参考に、破棄したと思われるコミットを探します。

スポンサーリンク

ステップ2 破棄されたコミットを新しいブランチに復元する

破棄されたコミットを見つけたら、そのコミットのハッシュ(99cf999 など)を使用して新しいブランチを作成し、そこにチェックアウトします。これにより、そのコミットの状態を安全に復元できます。

  • コミットハッシュを使用して新しいブランチを作成し、チェックアウトします。以下のコマンドを実行し、your-commit-hashを見つけたコミットのハッシュに、new-branch-nameを好みのブランチ名に置き換えてください。
git checkout -b new-branch-name your-commit-hash

ステップ3 復元したコミットを確認

新しいブランチにチェックアウトした後は、変更内容を確認します。

必要に応じて、このブランチで作業を続けたり、他のブランチにマージしたりすることができます。

  • 変更内容を確認するには、git loggit diffコマンドを使用します。
  • 問題なければ、このブランチをメインブランチにマージするか、さらに作業を続けることができます。
git log -1

注意点

  • git reflogによって提供される情報は、ローカルリポジトリに特有のものです。したがって、他の開発者と作業を共有している場合は、復元した変更をプッシュする前に、他の開発者とのコンフリクトがないか確認することが重要です。
  • 復元作業を行う前に、現在の作業ディレクトリとステージングエリアがクリーンであること(未コミットの変更がないこと)を確認してください。必要であれば、git stashを使用して変更を一時的に保存してから、復元作業を進めることができます。
スポンサーリンク
Python
著者SNS
タイトルとURLをコピーしました