Unterschied zwischen Git Checkout --Track Origin/Branch und Git Checkout -B Branch Origin/Branch
Dieser Artikel beschreibt den Unterschied zwischen den Befehlen git checkout -b branch origin/branch
und git checkout --track origin/branch
. Wir verwenden die beiden Befehle, um entfernte Branches in unseren Git-Repositories auszuchecken.
Die beiden Befehle haben das gleiche Ergebnis, aber der Unterschied liegt in der praktischen Verwendung, wie wir gleich sehen werden.
Unterschied zwischen git checkout -b branch origin/branch
und git checkout --track origin/branch
Um den Unterschied zwischen den beiden Befehlen zu verstehen, werden wir untersuchen, was jeder Befehl tut, wenn er auf dem Terminal ausgeführt wird. Lassen Sie uns gleich einsteigen.
den Befehl git checkout -b branch origin/branch
Wenn Sie mit Git vertraut sind, müssen Sie wissen, dass wir den folgenden Befehl verwenden, um einen Remote-Zweig auszuchecken.
$ git checkout <remotebranch>
Der obige Befehl erstellt einen remotebranch
in unserem lokalen Repo und beginnt mit der Verfolgung des entfernten Zweigs namens remotebranch
, wenn Ihr Ursprung
den remotebranch
hat.
Was ist, wenn unser lokales Repository bereits einen remotebranch
hat und wir einen Remote mit demselben Namen erstellen und verfolgen möchten? Wie gehen wir vor?
Hier kommt unser Befehl git checkout -b branch origin/branch
ins Spiel. Wir werden rennen:
$ git checkout -b remote-branch1 origin/remotebranch
Der obige Befehl erstellt einen remote-branch1
in unserem lokalen Repository und verfolgt den remotebranch
in unserem origin
. Denken Sie daran, dass Herkunft
unsere Fernbedienung ist.
den Befehl git checkout --track origin/branch
Der Befehl git checkout --track origin/branch
richtet einen Zweig namens branch
ein und verfolgt ihn gegen branch
in unserer Fernbedienung. Klingt wie der vorherige Befehl, oder?
Die Frage ist, wann sollte man es verwenden?
Es wäre am besten, den obigen Befehl zu verwenden, wenn unser lokales Repository mehrere Remotes mit demselben Zweignamen enthält.
Schauen wir uns ein Beispiel an.
Angenommen, unser lokales Repository hat vier remotes
mit einem Zweig namens remotebranch
. Wie unten gezeigt, können wir einen Zweig einrichten, um eine unserer Fernbedienungen zu verfolgen, in diesem Fall Herkunft
.
$ git checkout --track origin/remotebranch
Der obige Befehl erstellt einen lokalen Branch namens remotebranch
und verfolgt ihn gegen remotebranch
in unserem origin
.
Kurz gesagt, die Befehle git checkout -b branch origin/branch
und git checkout --track branch origin/branch
haben dasselbe Ergebnis, d. h. einen Branch erstellen, um eine Remote zu verfolgen.
Der Unterschied liegt in der praktischen Verwendung der beiden, wie wir besprochen haben.
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