Durchführen Eines Rebase-Vorgangs
Änderungen auf den main-Branch umbasieren
Bevor wir unsere Änderungen umbasieren können, müssen wir zunächst auf den main
-Branch wechseln und die neuesten Änderungen abrufen:
Werfen wir nun einen Blick auf den Commit-Baum:
Sowohl der main
- als auch der feature/payment
-Branch haben derzeit Commits nach dem letzten gemeinsamen Vorgänger. Dies bedeutet, dass ein Fast-Forward-Merge nicht durchgeführt werden kann.
Würden wir diese Branches zusammenführen, käme es zu einem Three-Way-Merge. Wir möchten jedoch unseren Verlauf linear halten, daher führen wir ein Rebase des feature/payment
-Branches auf den main
-Branch durch. Dies kann erreicht werden, indem wir auf den feature/payment
-Branch wechseln und den Befehl git rebase
ausführen:
Fast-forward-Merge
Da das Rebase erfolgreich war, werfen wir erneut einen Blick auf unseren Commit-Baum:
Wie erwartet ist die Commit-Historie nun linear, wobei der letzte Commit auf dem Branch feature/payment
liegt. Jetzt können wir einen einfachen Fast-forward-Merge auf den Branch main
durchführen:
Überprüfen wir, ob beide Branches auf denselben Commit zeigen, indem wir uns den letzten Commit ansehen:
Entfernen des Feature-Branches
Der main
-Branch enthält nun den neuesten Commit mit dem implementierten Zahlungssystem, daher können wir sowohl den lokalen als auch den entfernten feature/payment
-Branch sicher entfernen. Der folgende Befehl entfernt den entfernten Branch:
Nun können wir den lokalen Branch entfernen:
Abschließend können alle vorgenommenen Änderungen zurück in das Remote-Repository übertragen werden:
Um zu überprüfen, ob der feature-Branch sowohl lokal als auch remote gelöscht wurde, können Sie den folgenden Befehl ausführen, der alle (-a
steht für alle) lokalen und entfernten Branches auflistet:
Wie Sie sehen, wurde der Branch feature/payment
erfolgreich gelöscht, und es gibt jetzt nur noch zwei Branches: main
und john/test
mit ihren entfernten Gegenstücken.
Insgesamt eignet sich das Rebasen gut für lokale Änderungen, die noch nicht geteilt wurden, kann jedoch erhebliche Probleme verursachen, wenn Änderungen bereits in ein Remote-Repository veröffentlicht und möglicherweise von anderen Mitwirkenden heruntergeladen wurden. Das Rebasen von Commits, die von anderen verwendet werden, kann zu Verwirrung und Konflikten führen, da der Commit-Verlauf überschrieben wird.
Als allgemeine Regel gilt: Vermeiden Sie das Rebasen von Änderungen, die bereits in Remote-Repositories gepusht wurden, um diese Probleme zu verhindern.
Danke für Ihr Feedback!
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen
Awesome!
Completion rate improved to 5
Durchführen Eines Rebase-Vorgangs
Swipe um das Menü anzuzeigen
Änderungen auf den main-Branch umbasieren
Bevor wir unsere Änderungen umbasieren können, müssen wir zunächst auf den main
-Branch wechseln und die neuesten Änderungen abrufen:
Werfen wir nun einen Blick auf den Commit-Baum:
Sowohl der main
- als auch der feature/payment
-Branch haben derzeit Commits nach dem letzten gemeinsamen Vorgänger. Dies bedeutet, dass ein Fast-Forward-Merge nicht durchgeführt werden kann.
Würden wir diese Branches zusammenführen, käme es zu einem Three-Way-Merge. Wir möchten jedoch unseren Verlauf linear halten, daher führen wir ein Rebase des feature/payment
-Branches auf den main
-Branch durch. Dies kann erreicht werden, indem wir auf den feature/payment
-Branch wechseln und den Befehl git rebase
ausführen:
Fast-forward-Merge
Da das Rebase erfolgreich war, werfen wir erneut einen Blick auf unseren Commit-Baum:
Wie erwartet ist die Commit-Historie nun linear, wobei der letzte Commit auf dem Branch feature/payment
liegt. Jetzt können wir einen einfachen Fast-forward-Merge auf den Branch main
durchführen:
Überprüfen wir, ob beide Branches auf denselben Commit zeigen, indem wir uns den letzten Commit ansehen:
Entfernen des Feature-Branches
Der main
-Branch enthält nun den neuesten Commit mit dem implementierten Zahlungssystem, daher können wir sowohl den lokalen als auch den entfernten feature/payment
-Branch sicher entfernen. Der folgende Befehl entfernt den entfernten Branch:
Nun können wir den lokalen Branch entfernen:
Abschließend können alle vorgenommenen Änderungen zurück in das Remote-Repository übertragen werden:
Um zu überprüfen, ob der feature-Branch sowohl lokal als auch remote gelöscht wurde, können Sie den folgenden Befehl ausführen, der alle (-a
steht für alle) lokalen und entfernten Branches auflistet:
Wie Sie sehen, wurde der Branch feature/payment
erfolgreich gelöscht, und es gibt jetzt nur noch zwei Branches: main
und john/test
mit ihren entfernten Gegenstücken.
Insgesamt eignet sich das Rebasen gut für lokale Änderungen, die noch nicht geteilt wurden, kann jedoch erhebliche Probleme verursachen, wenn Änderungen bereits in ein Remote-Repository veröffentlicht und möglicherweise von anderen Mitwirkenden heruntergeladen wurden. Das Rebasen von Commits, die von anderen verwendet werden, kann zu Verwirrung und Konflikten führen, da der Commit-Verlauf überschrieben wird.
Als allgemeine Regel gilt: Vermeiden Sie das Rebasen von Änderungen, die bereits in Remote-Repositories gepusht wurden, um diese Probleme zu verhindern.
Danke für Ihr Feedback!