Was macht git --set-upstream?
Ich habe versucht, es zu verstehen, indem ich das Git-Handbuch gelesen habe , aber ich habe es nicht ganz verstanden.
Was macht git --set-upstream?
Ich habe versucht, es zu verstehen, indem ich das Git-Handbuch gelesen habe , aber ich habe es nicht ganz verstanden.
Antworten:
git branch --set-upstream <remote-branch>
Legt den Standard-Remote-Zweig für den aktuellen lokalen Zweig fest.
Jeder zukünftige git pullBefehl (mit ausgechecktem aktuellen lokalen Zweig)
versucht, Commits von der <remote-branch>in den aktuellen lokalen Zweig einzubringen.
Eine Möglichkeit, eine explizite Eingabe zu vermeiden, --set-upstreambesteht darin, das Kurzflag -uwie folgt zu verwenden:
git push -u origin local-branch
Dadurch wird die Upstream-Zuordnung für zukünftige Push / Pull-Versuche automatisch festgelegt.
Weitere Informationen finden Sie in dieser detaillierten Erklärung zu vorgelagerten Zweigen und zur Nachverfolgung .
Um Verwirrung zu vermeiden, lehnen neuere Versionen von
gitdiese etwas mehrdeutige--set-upstreamOption zugunsten einer ausführlicheren--set-upstream-toOption mit identischer Syntax und identischem Verhalten abgit branch --set-upstream-to <origin/remote-branch>
git push -u origin local-branchWas originrepräsentiert der in diesem Befehl ? Gibt es einen Fall, in dem ich etwas anderes als originnach dem -ueingeben würde ?
originbezieht sich auf das Remote-Git-Repository, aus dem geklont wurde. Es kann mehrere Remote-Git-Repositorys geben . In einem solchen Fall originkann durch den richtigen Namen der gewünschten Fernbedienung ersetzt werden, auf die man sich beziehen möchte.
git remote -vIhrer Fernbedienungen, die Standard zu finden , ist originin der Regel
Wenn Sie auf eine Fernbedienung drücken und das --set-upstreamFlag git verwenden, wird der Zweig, auf den Sie drücken, als Fernverfolgungszweig des Zweigs festgelegt, den Sie verschieben.
Hinzufügen eines Remote - Tracking - Zweig bedeutet , dass git dann weiß , was Sie tun möchten , wenn Sie git fetch, git pulloder git pushin Zukunft. Es wird davon ausgegangen, dass Sie den lokalen Zweig und den Remote-Zweig, den es verfolgt, synchron halten möchten, und es werden die entsprechenden Maßnahmen ergriffen, um dies zu erreichen.
Sie könnten das gleiche mit git branch --set-upstream-tooder erreichen git checkout --track. Weitere Informationen finden Sie auf den Git-Hilfeseiten zum Verfolgen von Zweigen .
git branch --set-upstream <<origin/branch>> wird offiziell nicht mehr unterstützt und ersetzt durch git branch --set-upstream-to <<origin/branch>>
--set-upstream-todie aufgrund der Verwirrungen (IIRC) bei der Einrichtung eingeführt wurde.