Dies ist keine direkte Antwort auf diese Frage, aber ich wollte hier eine Notiz für alle hinterlassen, die das gleiche Problem haben könnten wie ich, wenn sie versuchen, einen Upstream-Zweig zu konfigurieren.
Seien Sie vorsichtig mit push.default.
Bei älteren Git-Versionen war das Standardverhalten matching, was zu sehr unerwünschtem Verhalten führen würde, wenn Sie zum Beispiel haben:
Lokaler Zweig "master", der auf origin/master verfolgt
Remote-Zweig "upstream", der auf upstream/master verfolgt
Wenn Sie versuchen würden, "git push" auszuführen, wenn Sie sich im "upstream"-Zweig befinden, würde Git automatisch versuchen, den lokalen Zweig "master" in "upstream/master" zusammenzuführen, was eine Menge Chaos verursachen würde.
Dies führt zu einem vernünftigeren Verhalten:
git config --global push.default upstream
32 Stimmen
Wie unten angegeben, können Sie für einen vorhandenen Branch
git push -u origin branch-name
verwenden.6 Stimmen
Wenn der lokale Branch der aktuelle Branch ist und der lokale Branch noch nicht einem Remote-Branch folgt,
git pull
gibt oft hilfreiche Nachrichten über den geeigneten Befehl zur Festlegung von Tracking-Informationen.94 Stimmen
Es ist ärgerlich, wenn man Git lernt und einen Link zur Git-Dokumentation angezeigt bekommt. Diese Dokumentation scheint für Leute geschrieben zu sein, die bereits wissen, was sie mit Git machen.
17 Stimmen
Ab Git 2.10 sollten Sie zunächst zum beabsichtigten lokalen Zweig wechseln und dann Folgendes tun
git branch --set-upstream-to origin/
5 Stimmen
--set-upstream
produziert einen Fehler:fatal: die Option '--set-upstream' wird nicht mehr unterstützt. Bitte verwenden Sie stattdessen '--track' oder '--set-upstream-to'.
also istgit branch --set-upstream-to origin/
der aktuelle Befehl, der funktioniert.0 Stimmen
Für Personen, die diese SO-Frage als ersten Treffer suchen nach
"git remote add" "tracking"
: Ich musste ein neues Remote hinzufügen, das eine vorhandene Branch verfolgt, was ich mitgit remote add gitlab https://user@gitlab.com/group/subgroup/repository.git -t master
gelöst habe, gefolgt vongit push gitlab
. Funktioniert mitgit Version 2.18.0
. Das-t
steht fürtracking
, da es kein--tracking
gemäßman git remote add
gibt.0 Stimmen
Es ist definitiv frustrierend, dass das Auschecken eines Zweigs oder das Initiieren von Gitflow gelegentlich den Zweig nicht mit der Remote-Quelle verknüpft und stattdessen zufällig Fehler wirft, anstatt normale Befehle abzuschließen. Dies bricht Setup-Skripte oder verwirrt Neulinge, denen gesagt wird "folgen Sie diesen Befehlen, um loszulegen".
0 Stimmen
Beantwortet dies Ihre Frage? Wie kann ich einen neuen lokalen Branch zu einem Remote-Git-Repository pushen und ihn auch tracken?
0 Stimmen
Neueste, git branch -u origin/