2014-06-05 37 views

risposta

27
git submodule update --init --recursive 

Il modulo update comando ricorsivamente la sottomoduli registrato, l'aggiornamento e init (se necessario) e loro eventuali sottomoduli nidificati all'interno.

git submodule foreach --recursive git submodule update --init 

foreach valuterà il comando in ogni ne siamo andati sotto-modulo. Quindi aggiornerà e inizializzerà (se necessario) ogni sottomodulo e ogni sottomodulo annidato entro il --recursive.

Quindi, alla fine, entrambi i comandi otterranno la stessa cosa. Semplicemente l'esecuzione è diversa, il primo comando non passerà in ogni directory per eseguire il comando.

+3

come si aggiorna un singolo sottomodulo con ricorsivo? – malhal

+1

@malhal cd nel sottomodulo, quindi esegui uno dei comandi sopra indicati – jsears

+0

E 'possibile aggiornare un sottomodulo in remoto e aggiornare regolarmente i suoi sottomoduli, senza effettuare il cd'ing nella directory sub? Se l'aggiornamento remoto viene eseguito in modo ricorsivo, si ottengono versioni sub-sub successive a quelle richieste dal sub. Inoltre, se si utilizza il comando nella risposta, non si ottiene la versione più recente del sub Forse dovrei pubblicare una nuova domanda. – malhal

Problemi correlati