Perché inserire `master` nel comando` git prendere master` a monte?
Domanda
Nella sezione Tirare in modifiche upstream su di help.github diramazione una progetto afferma:
È passato del tempo, il repo monte è cambiata e si desidera aggiornare la forcella prima di inviare una nuova patch. Ci sono due modi per farlo:
$ git fetch upstream master
$ git merge upstream/master
Perché sono compresi master
nel comando prendere? Ho guardato le informazioni git help fetch
ma io non sto capendo quello compreso master
fa. Grazie.
Soluzione
che consente di:
- aggiornare la versione locale del ramo di monte maestro unico (al contrario come l'aggiornamento tutti rami del pronti contro termine a monte, che può essere più lungo di fare)
- senza innesco un'unione subito (in contrasto con il comando di trazione)
Il git merge
sarà quindi provare a fondersi quella versione locale del maestro upstream al ramo master pronti contro termine.
Quindi, ecco, è maestro, per il comando fetch
, un refspec.
<refspec>
Il formato di un parametro
<refspec>
è un plus opzionali +, seguito dal<src>
fonte ref, seguito da due punti:., Seguito dal<dst>
destinazione refL'arbitro remoto corrispondente
<src>
è inverosimile, e se non è<dst>
stringa vuota, l'arbitro locale che corrisponde è veloce-inoltrato utilizzando<src>
.
Se viene utilizzato il più+
facoltativa, l'arbitro locale viene aggiornato anche se non si traduca in un aggiornamento di fast-forward.
Qui, <dst>
è vuota, quindi la sezione locale di corrispondenza (il vostro master) viene aggiornato.
Senza padrone, che darebbe:
git fetch upstream
Il comando copia di cui sopra tutti i rami del namespace
refs/heads/
remoto e li memorizza allo spazio dei nomirefs/remotes/upstream/
locali, a meno che l'opzionebranch.<name>.fetch
viene utilizzato per specificare un refspec non predefinito.