git pull を元に戻す、リポジトリを古い状態に戻す方法 質問する

git pull を元に戻す、リポジトリを古い状態に戻す方法 質問する

git pull を元に戻して、ソース/リポジトリを git pull を実行する前の古い状態に戻す方法はありますか? 不要なファイルがマージされ、残りのファイルのみがマージされたため、これを実行したいと思います。そのため、それらのファイルを元に戻したいのですが、可能ですか?

編集:明確にするためにgit mergeを元に戻したい。いくつかの回答を見た後、私はこれをやった

git reflog
bb3139b... HEAD@{0}: pull : Fast forward
01b34fa... HEAD@{1}: clone: from ...name...

さて、どうすればいいでしょうか? やっても大丈夫ですgit reset --hardか? また失敗したくないので、詳しい手順を教えていただけますか?

ベストアンサー1

実行するとgit pull、次のタスクが順番に実行されます。

  1. git fetch
  2. git merge

マージ ステップは、構成でマージするように設定されているブランチを結合します。マージステップは元に戻したいのですが、フェッチは元に戻したくないでしょう(あまり意味がなく、必要ないはずです)。

マージを元に戻すにはgit reset --hardローカルリポジトリを以前の状態にリセットするために使用します。git reflog の以前の状態の SHA-1 を見つけて、それにリセットします。

警告

このセクションにリストされているコマンドは、コミットされていない変更をすべて削除し、作業が失われる可能性があります。

git reset --hard

あるいは、次のように特定の時点にリセットします。

git reset --hard master@{"10 minutes ago"}

おすすめ記事