Vorwort
Bei der Arbeit, der Einsatz von Git Kommt immer häufiger vor. . Zusätzlich zu den am häufigsten verwendeten Befehlen clone
, add
, commit
, push
, pull
und anderen Befehlen gibt es auch einen Rollback-Befehl reset
. In diesem Blog wird die einfache Verwendung dieses Rollback-Befehls aufgezeichnet.
Szenario
Denn während des Entwicklungsprozesses des Unternehmens wird die Nachrichtenwarteschlange MQ von Alibaba Cloud bei der Bearbeitung von Bestellungen, zeitlich begrenzten Einkäufen und anderen Geschäften verwendet. realisiert. Oder die Interaktion zwischen den beiden Systemen, zum Beispiel die Synchronisierung von Informationen, wenn der Benutzer eine Bestellung auf 支付系统A
aufgibt (die Zahlung ist erfolgreich). Zu diesem Zeitpunkt sendet 支付系统A
zusätzlich zur Bearbeitung der Bestellung auch eine Nachricht an 库存系统B
um zu informieren 库存系统B
Um den Lagerbestand der bestellten Produkte zu reduzieren.
Wenn ich das Projekt lokal ausführe und nicht auskommentiere 监听器
, werden die Nachrichten auf dem Testserver möglicherweise auch an meinen lokalen Computer gesendet, wodurch die Nachricht verloren geht.
Dann~~ habe ich den lokalen Listener-Code auskommentiert, um Testern das Testen auf dem Testserver zu erleichtern. Kommentieren Sie den Code wie unten gezeigt aus:
Haha~~ Nachdem ich ihn auskommentiert habe, habe ich ihn zusammen eingereicht, als ich ihn eingereicht habe! Wie peinlich! Der Tester hat einen Fehler gemeldet!
Wenn ich mir den Code-Übermittlungsverlauf ansehe, wurde der Nachrichten-Listener von mir auskommentiert. Ich werde die Schuld auf mich nehmen! (lacht und weint)
Lösen Sie das Problem
Ups. . . Was ich oben gesagt habe, scheint nicht ganz mit dem Thema dieses Artikels übereinzustimmen.
Tatsächlich habe ich versehentlich Code übermittelt, der nicht an die lokale Klasse übermittelt werden sollte. Die TaskListener
-Klasse konnte beispielsweise nicht übermittelt werden, nachdem sie versehentlich an die übergeben wurde lokal (es wurde noch nicht auf remote übertragen).
Es ist möglich, dass Sie sich vor Ort mehrfach verpflichtet haben.
1. Überprüfen Sie zunächst das Commit-Protokoll und führen Sie den folgenden Befehl aus
-Version zurücksetzen und alle Commits in dieser Version und später abbrechen sollten. 239afed0857cc2e77c17c01014077808619af64d
git log
git reset --hard commit_id //退到/进到 指定commit的sha码 commit_id:239afed0857cc2e77c17c01014077808619af64d
IDEA RESET
Sie können IDEA auch direkt verwenden Funktion: Verwenden Sie zuerst Reset Head
, um das Rollback von git log
zu erhalten, und führen Sie dann den folgenden Screenshot aus. Sie können es zuerst überprüfen und sehen, ob Sie diese Einreichung über commit_id
finden können. commit_id
Zusammenfassung
Entwicklung Während des Prozesses werden Sie immer versehentlich einige Dokumente einreichen, die nicht eingereicht werden können. . Wenn Sie IDEA für die Entwicklung verwenden, können Sie sich diese Funktion von IDEA ansehen – sie ist praktisch und Sie müssen sich keine Sorgen mehr machen, dass Sie die falsche Einreichung einreichen. Empfohlenes Tutorial: „Git-Tutorial“
Das obige ist der detaillierte Inhalt vonWie führt GIT ein Rollback auf einen Commit durch?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!