Was ist der Unterschied zwischen git pull origin master
und git pull origin/master
?
git
version-control
Rachel
quelle
quelle
git pull origin/master
. Wenn Sie den [lokal gespeicherten] Remote-Zweig zusammenführen möchtenorigin/master
, verwenden Sie einfachgit merge origin/master
.git pull
Mittelgit fetch
gefolgt vongit merge
. Es ruft den Inhalt von der Fernbedienung ab und führt ihn dann in Ihren aktuellen Zweig ein. Istorigin/master
aber eine lokale Niederlassung (Verfolgung einer entfernten Niederlassung). Wenn Sie es zusammenführen möchten, müssen Sie nichts abrufen. Es ist irreführend zu sagen,git pull origin/master
wenn Sie nicht tatsächlich von einer Fernbedienung abrufen.origin/master
ist ein lokal gespeicherter Zweig, der den Hauptzweig auf der Ursprungsfernbedienung zwischenspeichert.Antworten:
git pull origin master
wird Änderungen von derorigin
Fernbedienung abrufen,master
verzweigen und sie mit der lokalen ausgecheckten Verzweigung zusammenführen.git pull origin/master
zieht Änderungen aus dem lokal gespeicherten Zweigorigin/master
und führt diese mit dem lokal ausgecheckten Zweig zusammen. Derorigin/master
Zweig ist im Wesentlichen eine "zwischengespeicherte Kopie" dessen, woraus zuletzt gezogen wurdeorigin
, woraus , weshalb er im Git-Sprachgebrauch als entfernter Zweig bezeichnet wird. Dies könnte etwas verwirrend sein.Sie können sehen, mit welchen Zweigen verfügbar ist,
git branch
undgit branch -r
die "Remote-Zweige" anzeigen.quelle
git pull origin master
wird es an den Master - Zweig immer fusionieren, sagen sie mal am auf einem anderen Zweig in meinem Repo und dann über Befehl tut, wird es meinen aktuellen Zweig mit der Ursprung entfernten Änderungen oder meinem Master - Zweig mit den Änderungen aktualisieren?git merge
(und dahergit pull
) verschmilzt immer mit dem aktuellen Zweig. Um mit etwas anderem als Ihrem aktuellen Zweig zusammenzuführen, überprüfen Sie es einfach zuerst.git pull origin/master
Möglicherweise war dies ein gültiger Befehl, als dies geschrieben wurde, aber heutzutage (Git 1.7.10.3) schlägt er fehlfatal: 'origin/master' does not appear to be a git repository
(wie es sollte - Pull ist immer zum Abrufen von Fernbedienungen gedacht).git pull origin master
ruft alle Änderungen aus dem Hauptzweig der Fernbedienung ab und führt sie in Ihrem lokalen Zweig zusammen. Wir verwenden im Allgemeinen nicht git pull origin / master. Wir können das Gleiche tun, indemgit merge origin/master
wir alle Änderungen aus der "zwischengespeicherten Kopie" von zusammenführen Der Hauptzweig des Ursprungs in Ihren lokalen Zweig. In meinem Fallgit pull origin/master
wird der Fehler ausgelöst .quelle
git pull
=git fetch
+git merge origin/branch
git pull
undgit pull origin branch
unterscheiden sich nur darin, dass letztere nur den Ursprung / Zweig und nicht alle Ursprünge / * "aktualisieren"git pull
.git pull origin/branch
wird einfach nicht funktionieren, weil es versucht, eine zu tungit fetch origin/branch
die ungültig ist.Frage im Zusammenhang: Git Fetch + Git Merge Origin / Master vs Git Pull Origin / Master
quelle