Cosa significa git --set-upstream
?
Ho provato a capirlo leggendo il manuale di git , ma non ho capito bene.
Cosa significa git --set-upstream
?
Ho provato a capirlo leggendo il manuale di git , ma non ho capito bene.
Risposte:
git branch --set-upstream <remote-branch>
imposta il ramo remoto predefinito per il ramo locale corrente.
Qualsiasi git pull
comando futuro (con il ramo locale corrente estratto),
tenterà di portare commit dal <remote-branch>
ramo locale corrente.
Un modo per evitare di dover digitare esplicitamente --set-upstream
è usare il suo flag di stenografia -u
come segue:
git push -u origin local-branch
Ciò imposta automaticamente l'associazione a monte per eventuali futuri tentativi push / pull.
Per ulteriori dettagli, consulta questa spiegazione dettagliata sulle filiali e il monitoraggio a monte .
Per evitare confusione, le versioni recenti di
git
deprecano questa--set-upstream
opzione alquanto ambigua a favore di--set-upstream-to
un'opzione più dettagliata con sintassi e comportamento identicigit branch --set-upstream-to <origin/remote-branch>
git push -u origin local-branch
cosa origin
rappresenta? C'è un caso in cui scriverei qualcosa di diverso da origin
dopo il -u
?
origin
riferisce al repository git remoto da cui è stato usato il clone. Possono esserci più repository git remoti . In tal caso, origin
può essere sostituito con il nome proprio del telecomando desiderato a cui si desidera fare riferimento.
git remote -v
per trovare i telecomandi, quello predefinito è di origin
solito
Quando si preme su un telecomando e si utilizza il --set-upstream
flag git, imposta il ramo su cui si sta spingendo come ramo di rilevamento remoto del ramo che si sta spingendo.
L'aggiunta di un monitoraggio a distanza tramite filiali che git sa allora che cosa si vuole fare quando si git fetch
, git pull
ogit push
in futuro. Si presume che si desideri mantenere sincronizzati il ramo locale e il ramo remoto che sta monitorando e fa la cosa appropriata per raggiungere questo obiettivo.
Puoi ottenere la stessa cosa con git branch --set-upstream-to
o git checkout --track
. Consulta le pagine della guida di git sui rami di tracciamento per ulteriori informazioni.
git branch --set-upstream <<origin/branch>>
non è più ufficialmente supportato ed è sostituito da git branch --set-upstream-to <<origin/branch>>
--set-upstream-to
che è stata introdotta a causa delle confusioni (IIRC) sul set-upstream.