gitで特定のコミットにロールバックするにはどうすればいいでしょうか?
誰かが私に与えてくれた最善の答えは、git revert
目的のコミットに到達するまで X 回使用するというものでした。
たとえば、20 コミット前のコミットに戻したい場合は、これを 20 回実行する必要があります。
もっと簡単な方法はありますか?
このリポジトリは公開されているため、リセットは使用できません。
ベストアンサー1
これを試して:
git checkout [revision] .
はコミット ハッシュです[revision]
(例: 12345678901234567890123456789012345678ab
)。
最後にを忘れないでください.
。非常に重要です。これにより、ツリー全体に変更が適用されます。このコマンドは、git プロジェクトのルートで実行する必要があります。サブディレクトリにいる場合、このコマンドは現在のディレクトリ内のファイルのみを変更します。その後、コミットすれば問題ありません。
これを元に戻すには
git reset --hard
これにより、作業ディレクトリとステージング領域からすべての変更が削除されます。