Git Rebase Origin/Branch vs. Git Rebase Origin Branch

John Wachira 20 Juni 2023
  1. Unterschied zwischen den Befehlen git rebase origin/branch und git rebase origin master
  2. Abschluss
Git Rebase Origin/Branch vs. Git Rebase Origin Branch

Dieser Artikel beschreibt den Unterschied zwischen den Befehlen git rebase origin/branch und git rebase origin branch. Wir verwenden beide Befehle zum Rebase von der Fernbedienung, aber die praktische Verwendung variiert, wie wir in Kürze besprechen werden.

Unterschied zwischen den Befehlen git rebase origin/branch und git rebase origin master

Um den Unterschied zwischen den beiden Befehlen zu verstehen, schauen wir uns an, was jeder Befehl tut und welchem Arbeitsablauf sie folgen.

den Befehl git rebase origin/branch

Schauen wir uns das folgende Beispiel an:

$ git rebase origin/master

Dieser Befehl impliziert, dass wir einen Zweig aus dem master-Zweig unseres Upstreams rebasen wollen. Der Befehl allein kann den Job jedoch nicht abschließen.

Bevor Sie diesen Befehl ausführen, müssen Sie vom Upstream-Branch master abrufen.

Alternativ können Sie den traditionellen Weg verwenden:

  1. Wechseln Sie mit dem Befehl git checkout master zu Ihrem master-Zweig.
  2. Ziehen Sie mit dem Befehl git pull origin master von Ihrem Upstream-Zweig master.
  3. Wechseln Sie mit dem Befehl git checkout <branch-name> zurück zu dem Branch, den Sie rebasen möchten.
  4. Nun können Sie git rebase origin/master ausführen.

Dies sollte die Commits in Ihrem Branch mit den Commits im vorgelagerten master-Branch aktualisieren.

den Befehl git rebase origin master

Der git rebase origin master ist eine Kombination aus zwei Commits.

$ git checkout master

Und

$ git rebase origin

Wir alle wissen, dass git rebase origin bedeutet, dass wir vom Tracking-Zweig von origin oder mit anderen Worten von unserem Upstream rebasen wollen. Daraus können wir ableiten, dass git rebase origin master zu unserem master-Zweig wechselt und ihn vom Remote-Tracking-Zweig rebasiert.

Der Befehl schlägt fehl, wenn Sie keinen Remote-Tracking-Zweig für Ihren master-Zweig haben. Sie können Abhilfe schaffen, indem Sie einen vorgelagerten Tracking-Zweig setzen, wie unten gezeigt:

$ git branch --set-upstream-to=origin/master

Stellen Sie sicher, dass Sie in Ihrem master-Zweig ausgecheckt sind, bevor Sie den obigen Befehl ausführen.

Abschluss

Aus dem Obigen können wir schlussfolgern, dass der git rebase origin master verwendet wird, um den master-Zweig vom Upstream-Tracking-Zweig zu rebasen, während der git rebase origin/master verwendet wird, um einen bestimmten Zweig vom Upstream zu rebasen master-Zweig.

Der git rebase origin/master erhält jedoch nicht die neuen Commits im vorgelagerten master-Zweig. Sie müssen Ihren lokalen master-Zweig vor dem Rebasing aktualisieren.

John Wachira avatar John Wachira avatar

John is a Git and PowerShell geek. He uses his expertise in the version control system to help businesses manage their source code. According to him, Shell scripting is the number one choice for automating the management of systems.

LinkedIn

Verwandter Artikel - Git Rebase