Ich weiß, Ursprung ist ein Begriff für das Remote-Repository und Master ist der Zweig dort.
Ich lasse hier absichtlich den "Kontext" weg und hoffe, dass die Antwort nicht vom Kontext abhängt. Was ist also in Git-Befehlszeilen der Unterschied zwischen Origin / Master und Origin Master ? Gibt es eine eindeutige Methode, um zu verstehen, wann Origin / Master verwendet werden soll und wann ich Origin Master verwenden soll ?
Antworten:
Hier gibt es tatsächlich drei Dinge: Es
origin master
gibt zwei verschiedene Dinge und esorigin/master
ist eine Sache. Insgesamt drei Dinge.Zwei Zweige:
master
ist eine lokale Niederlassungorigin/master
ist ein Remote-Zweig (dies ist eine lokale Kopie des Zweigs mit dem Namen "master" auf dem Remote-Namen "origin").Eine Fernbedienung:
origin
ist eine FernbedienungBeispiel: In zwei Schritten ziehen
Da
origin/master
es sich um einen Zweig handelt, können Sie ihn zusammenführen. Hier ist ein Zug in zwei Schritten:Schritt eins,
master
von der Fernbedienung holenorigin
. Dermaster
Zweigorigin
wird abgerufen und die lokale Kopie wird benanntorigin/master
.Dann verschmelzen Sie
origin/master
mitmaster
.Dann können Sie Ihre neuen Änderungen
master
zurückschieben auforigin
:Mehr Beispiele
Sie können mehrere Zweige nach Namen abrufen ...
Sie können mehrere Zweige zusammenführen ...
quelle
git remote add home my-server:projects/my-project
eine Fernbedienung mit dem Namen "home" hinzu. Sie können sich auf die Dokumentation beziehen: git-scm.com/docs/git-remoteorigin/master
ist eine Entität (da es sich nicht um einen physischen Zweig handelt), die den Status desmaster
Zweigs auf der Fernbedienung darstelltorigin
.origin master
ist der Zweigmaster
auf der Fernbedienungorigin
.Also haben wir diese:
Beispiel (in der lokalen Niederlassung
master
):quelle
origin master
ist kein Zweig ... es sind tatsächlich zwei getrennte Dinge, "Ursprung" (eine Fernbedienung) und "Master" (ein lokaler Zweig).origin/master
ist remote master branch. Die lokale Niederlassung ist nur der Master.origin/master
ist der entferntemaster
ZweigNormalerweise führen Sie nach dem Ausführen von a
git fetch origin
, um alle Änderungen vom Server zu übernehmen, a ausgit rebase origin/master
, um Ihre Änderungen neu zu begründen und den Zweig auf den neuesten Index zu verschieben. Hierorigin/master
bezieht sich auf den Remote-Zweig, da Sie GIT grundsätzlich anweisen, denorigin/master
Zweig auf den aktuellen Zweig umzustellen .Sie würden
origin master
zum Beispiel beim Schieben verwenden.git push origin master
weist GIT einfach an, den lokalenmaster
Zweig an das Remote-Repository zu senden.quelle
origin master
weist die Software an, etwas mit dem zu tun, was sich auf 'master' im 'origin'-Repository befindet.origin/master
ist eine Referenz auf die gleiche Weisef3a4d5
oderHEAD
ist.origin ist ein Name für Remote-Git-URL. Es kann unten ein weiteres Beispiel für Fernbedienungen geben.
Was Origin / Master (Beispiel Bangalore / Master) betrifft, ist dies ein Zeiger auf das Commit "Master" auf der Bangalore- Site. Sie sehen es in Ihrem Klon.
Es ist möglich, dass Remote Bangalore fortgeschritten ist, seit Sie "holen" oder "ziehen" gemacht haben.
quelle
Angesichts der Tatsache, dass Sie wechseln können
origin/master
(obwohl im getrennten Zustand), während Ihr Netzwerkkabel abgezogen ist, muss es sich um eine lokale Darstellung dermaster
Zweigstelle bei handelnorigin
.quelle