Remote-Branch aktualisieren, nachdem die Historie geändert wurde

GitGitBeginner
Jetzt üben

This tutorial is from open-source community. Access the source code

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

Git ist ein leistungsstarkes Versionskontrollsystem, das es Entwicklern ermöglicht, Änderungen an ihrer Codebasis zu verfolgen. Eine der wichtigsten Funktionen von Git ist die Möglichkeit, die Historie neu zu schreiben, was nützlich sein kann, wenn Sie Änderungen an früheren Commits vornehmen müssen. Allerdings kann das Neuschreiben der Historie zu Problemen führen, wenn Sie versuchen, Änderungen an einem Remote-Repository zu pushen. In diesem Lab werden Sie lernen, wie Sie einen Remote-Branch aktualisieren, nachdem Sie die Historie lokal geändert haben.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL git(("Git")) -.-> git/CollaborationandSharingGroup(["Collaboration and Sharing"]) git/CollaborationandSharingGroup -.-> git/remote("Manage Remotes") subgraph Lab Skills git/remote -.-> lab-12734{{"Remote-Branch aktualisieren, nachdem die Historie geändert wurde"}} end

Remote-Branch aktualisieren, nachdem die Historie geändert wurde

Wenn Sie die Historie lokal ändern, erstellen Sie einen neuen Commit mit einem anderen SHA-1-Hash. Dies bedeutet, dass die Commit-Historie auf Ihrem lokalen Branch von der Commit-Historie auf dem Remote-Branch unterschiedlich ist. Wenn Sie versuchen, Ihre Änderungen an den Remote-Branch zu pushen, wird Git den Push ablehnen, da es die Commit-Historie als divergiert ansieht. Um dieses Problem zu lösen, müssen Sie eine Aktualisierung des Remote-Branchs erzwingen.

Um dieses Lab zu absolvieren, verwenden Sie das Git-Repository git-playground aus Ihrem GitHub-Konto, das von einem Fork von https://github.com/labex-labs/git-playground.git stammt.

  1. Klonen Sie das git-playground-Repository auf Ihren lokalen Computer:
git clone https://github.com/your-username/git-playground.git
  1. Aktualisieren Sie einen Commit mit der Nachricht "Added file2.txt" zu einem Commit mit der Nachricht "Update file2.txt":
git commit --amend
  1. Pushen Sie Änderungen von Ihrem lokalen Branch zum Remote-Repository:
git push
  1. Wenn Sie es nicht erfolgreich pushen können, drücken Sie bitte mit Zwang:
git push -f origin master

Das -f-Flag zwingt Git, den Remote-Branch mit Ihren Änderungen zu aktualisieren, auch wenn die Commit-Historie divergiert ist.

Dies ist das Endresultat:

[object Object]

Zusammenfassung

In diesem Lab haben Sie gelernt, wie Sie einen Remote-Branch aktualisieren, nachdem Sie die Historie lokal geändert haben. Mit dem Befehl git push -f können Sie Git zwingen, den Remote-Branch mit Ihren Änderungen zu aktualisieren, auch wenn die Commit-Historie divergiert ist. Es ist wichtig, diesen Befehl mit Vorsicht zu verwenden, da er Änderungen von anderen Entwicklern überschreiben kann.