1 ロールバックするブランチを決定する
たとえば、dev ブランチ; その後、dev ブランチに切り替えます。
2 ログコマンドの使用
git log
送信レコードを確認し (dev に切り替えたため、dev の送信レコードを見ていることになります)、ロールバックする必要があるコミット位置を見つけて、コミット番号を記録します。次に例を示します。
commit 96f6ec9bf41fe0e425f8495d46a52b8f990facd3
<注: このコミット場所へのロールバックには、このコミットによって送信されたコードが含まれます。このコミットによって送信されたコードが不要な場合は、最後のコミット場所にロールバックしてください>
3 ロールバックコマンドを実行します
ローカル コードをこのコミット (このコミットを含む) の状態にロールバックします。
git reset --hard 96f6ec9bf41fe0e425f8495d46a52b8f990facd3
4 コマンドを実行して、ローカル コードをリモートに強制的にプッシュします。
git push origin dev --force
例証します:
●forceコマンドを使用しないとリモートにプッシュできず競合が発生します。
(当然、競合が発生します。コードをロールバックすると、現在のローカル バージョンはリモート バージョンと矛盾します。たとえば、ローカル バージョンは v0.1、リモート バージョンは v0.2 になります。リモート バージョンが必要な場合は、 v0.1 にロールバックするには、force コマンドのみを使用できます)
●プッシュ後、リモートのコード送信履歴はローカルのものと同じになることに注意してください(v0.2のコード送信記録が失われます。v0に必要なコードがまだある場合。最初にそれを整理してから、プッシュロールバックコマンドを実行します)
●originとは、事前に設定したリモートURL(.gitのURL)を指します。
●dev はリモートの dev ブランチを意味します。
●コマンド全体の意味は、ローカルの現在のブランチのコードをリモートの開発ブランチに強制的にプッシュすることです(競合を無視して直接上書きします)。