2010-10-15 7 views
7

Sto cercando di aggiungere un repo esterno come un modulo del mio repo, così ho seguito these instructions, facendo:file di per modulo non vengono estratti

git submodule add git:... vendor 
git submodule init 
git submodule update 

poi mi stanco:

git submodule init vendor 
git submodule update vendor 

Il sottomodulo che sto aggiungendo ha sottomoduli, e i sottomoduli del sottomodulo sembrano essere controllati (cioè: vedo i file sul mio disco fisso) ma i file per il sottomodulo stesso non vengono estratti.

Qualche idea su cosa sto facendo male?

Questo è the repo that I'm trying to add as a submodule, ed è src directory è tutto ciò che vedo nella mia cassa/clone, insieme con le sottodirectory e file o src, ma non ho il file readme per esempio.

+1

Quale versione di Git stai usando? – VonC

+0

'git --version' = 1.7.2 – erikvold

risposta

8

Dalla versione 1.6.5 di git è possibile utilizzare le opzioni --recursive e --init su git submodule update per assicurarsi che i sottomoduli siano inizializzati e aggiornati in modo ricorsivo. Quindi, per il tuo esempio, il seguente funziona per me:

$ git submodule add git://github.com/jbalogh/zamboni-lib.git vendor 
remote: Counting objects: 7001, done. 
remote: Compressing objects: 100% (5985/5985), done. 
remote: Total 7001 (delta 1137), reused 6337 (delta 736) 
Receiving objects: 100% (7001/7001), 14.88 MiB | 1.99 MiB/s, done. 
Resolving deltas: 100% (1137/1137), done. 
$ git submodule update --init --recursive 
[... lots of output ...] 

Spero che sia di qualche utilità.

+0

Eccellente! Mi ero dimenticato di questa domanda e delle opzioni 'git update'. +1 – VonC