2015-12-31 15 views

risposta

6

Naturalmente!

Un "normale" fetch è git fetch origin refs/heads/*:refs/remotes/origin/*

Questo sta dicendo il repository corrente per la connessione a origin, ottenere un elenco di refs/heads/* e memorizzare i riferimenti nel locale refs/remotes/origin/.

È possibile modificare questo per ottenere il origin:refs/remotes/* in questo modo: git fetch origin refs/remotes/*:refs/remotes/origin/*

Vale la pena notare che l'utilità di questo dipende dalla vostra conoscenza del telecomando che stai parlando: È possibile ottenere il nome remoto che è stato configurato nel telecomando stai facendo riferimento, ma non ottieni i dettagli su quel telecomando. In altre parole si potrebbe finire per vedere una nuova voce refs/remotes/origin/origin/master ma quello che è esattamente il monitoraggio sarebbe un mistero se non si sa cosa sia veramente origin/origin.

+0

Sebbene tu non sappia cosa sta monitorando il ramo di monitoraggio del telecomando, significa semplicemente che "doppiamente non sai" di cosa tratta il ramo. Cioè se l'origine/master del telecomando è una cosa sconosciuta, il corrispondente "master" locale del telecomando è quella cosa sconosciuta con gli hack locali che potrebbero essere ulteriormente divergenti al momento. – Kaz

0

Non è consentito il recupero dai rami di localizzazione remota, ovvero i riferimenti/remoti/* del repository remoto?

Sì, è possibile.

Git non importa da dove proviene la sorgente. È possibile recuperare, estrarre & forme di fusione diverse filiali e origine allo stesso tempo.

Considerate questo:

avete un grande progetto in cui si dispone di diversi sub-appaltatori che lavorano sullo stesso progetto, ma ognuno è modificare il codice in un percorso diverso.

Una volta terminato il lavoro, è necessario unire tutto in un unico grande progetto.

Come?

git merge origin1/A origin2/B origin3/3 ... originN/N 

Anche in questo caso, git non si cura in cui il contenuto viene.

Problemi correlati