Heim  >  Artikel  >  Entwicklungswerkzeuge  >  So machen Sie frühere Commits mit dem Git-Revert-Befehl rückgängig

So machen Sie frühere Commits mit dem Git-Revert-Befehl rückgängig

PHPz
PHPzOriginal
2023-04-03 11:52:193473Durchsuche

Wenn Sie Git zur Codeversionskontrolle verwenden, ist es unvermeidlich, dass Sie frühere Übermittlungen rückgängig machen müssen. Git bietet mehrere Möglichkeiten, übermittelte Codeänderungen rückgängig zu machen, darunter der Befehl „revert“. Mit dem Befehl „revert“ können Sie einen oder mehrere vorherige Commits zurücksetzen, um die lokale Codebasis in einen bestimmten Zustand zurückzusetzen.

In diesem Artikel erfahren Sie, wie Sie den Revert-Befehl von Git verwenden, um frühere Commits rückgängig zu machen, sowie gängige Problemlösungen.

1. Verschiedene Arten von Rückgängigmachungsvorgängen

Es gibt zwei Hauptversions-Rollback-Vorgänge in Git: Zurücksetzen und Zurücksetzen.

Der Reset-Vorgang wird verwendet, um einen lokalen Commit rückgängig zu machen und den HEAD-Zeiger auf die gewünschte Commit-Version zu verweisen (Hard Reset) oder den HEAD-Zeiger auf den Pfad der gewünschten Version zu verschieben (Soft Reset).

Und der Revert-Befehl wird verwendet, um den vorherigen Commit rückgängig zu machen und einen neuen Commit zu erstellen, um die Änderungen rückgängig zu machen. Diese Methode eignet sich besonders zum Rückgängigmachen von Commits, die in andere Branches eingebunden wurden.

2. Verwenden Sie „revert“, um frühere Commits rückgängig zu machen.

Mit dem Befehl „revert“ können Sie frühere Commits rückgängig machen und neue Commits erstellen, um Änderungen rückgängig zu machen.

Dieser Befehl kann die folgende Syntax verwenden:

$ git revert commit_id

Wobei commit_id die ID der zu widerrufenden Übermittlung ist. Es muss ein exakter Wert sein (kann im Befehl git log gefunden werden).

Dieser Befehl erstellt ein neues Commit, macht die durch das angegebene Commit vorgenommenen Änderungen rückgängig und führt das neue Commit im Zielzweig zusammen, damit andere nachvollziehen können, wo das Rückgängig gemacht wurde.

Wenn wir beispielsweise einer Datei eine Zeile hinzufügen und die Änderungen festschreiben und die Änderungen dann rückgängig machen möchten, können wir den folgenden Befehl eingeben:

$ git revert a1b2c3d4

Dadurch wird das Festschreiben mit der ID a1b2c3d4 rückgängig gemacht und ein neues Festschreiben zum Zurücksetzen erstellt die Veränderungen.

3. Häufige Probleme und Lösungen des Revert-Befehls

Bei der Verwendung des Revert-Befehls gibt es einige häufige Probleme, die beachtet werden müssen.

  1. Zusammenführungskonflikte

Wenn der Befehl „Zurücksetzen“ auf einen Zusammenführungskonflikt stößt, fordert Git Sie auf, eine manuelle Zusammenführung durchzuführen. Wenn Sie manuell zusammenführen müssen, können Sie dazu git merge verwenden.

  1. Teilweise Änderungen an einer Datei rückgängig machen

Wenn Sie Teiländerungen eines Commits rückgängig machen möchten (anstelle des gesamten Commits), müssen Sie mit den Befehlen git add und git commit einen temporären Commit erstellen. Erstellen Sie dazu zunächst einen neuen Zweig und verschieben Sie ihn an den Speicherort des Commits, den Sie rückgängig machen möchten:

$ git checkout -b temp_branch commit_id

Verwenden Sie dann den folgenden Befehl, um die Änderungen anzuzeigen:

$ git diff HEAD^ HEAD

Verwenden Sie den folgenden Befehl, um nur die angegebenen Änderungen rückgängig zu machen:

$ git checkout HEAD^ -- path/to/file
$ git checkout -p HEAD@{1} path/to/file

Verwenden Sie abschließend git. Die Befehle add und git commit erstellen einen neuen Commit und führen ihn in den Zielzweig ein:

$ git checkout origin/destination
$ git merge temp_branch
  1. Regret

Wenn Sie versehentlich den Befehl „revert“ verwenden, um den falschen Commit rückgängig zu machen, können Sie den verwenden Verwenden Sie den Befehl „git reflog“, um den vorherigen Commit-Verlauf zu finden, und verwenden Sie den Befehl „git reset“, um Änderungen rückgängig zu machen oder sogar vollständig rückgängig zu machen.

$ git reflog
$ git reset HEAD@{1}

Oder verwenden Sie den folgenden Befehl, um zum vorherigen Commit zurückzukehren:

$ git reset --hard HEAD^

In diesem Artikel stellen wir vor, wie Sie den Revert-Befehl von Git verwenden, um frühere Commits rückgängig zu machen und Änderungen rückgängig zu machen, sowie einige häufige Probleme und deren Lösungen. Diese Vorgänge können Ihnen dabei helfen, Ihre Codebasis besser zu verwalten und dadurch Ihre Arbeitseffizienz zu verbessern.

Das obige ist der detaillierte Inhalt vonSo machen Sie frühere Commits mit dem Git-Revert-Befehl rückgängig. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn