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
、次のタスクが順番に実行されます。
git fetch
git merge
マージ ステップは、構成でマージするように設定されているブランチを結合します。マージステップは元に戻したいのですが、フェッチは元に戻したくないでしょう(あまり意味がなく、必要ないはずです)。
マージを元に戻すには、git reset --hard
ローカルリポジトリを以前の状態にリセットするために使用します。git reflog の以前の状態の SHA-1 を見つけて、それにリセットします。
警告
このセクションにリストされているコマンドは、コミットされていない変更をすべて削除し、作業が失われる可能性があります。
git reset --hard
あるいは、次のように特定の時点にリセットします。
git reset --hard master@{"10 minutes ago"}