2010-10-15 32 views
7

我想添加一個外部回購我的回購的子模塊,所以我也跟着these instructions,這樣做的:子模塊的文件未簽出

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

然後我累了:

git submodule init vendor 
git submodule update vendor 

我添加的子模塊具有子模塊,並且子模塊的子模塊顯示爲檢出(即:我在硬盤上看到文件),但子模塊本身的文件未檢出。

任何想法我做錯了什麼?

這是the repo that I'm trying to add as a submodule,它是src目錄就是我在checkout/clone中看到的所有內容,以及子目錄和文件或src,但我沒有自述文件。

+1

你使用的是什麼版本的Git? – VonC 2010-10-15 04:17:21

+0

'git --version' = 1.7.2 – erikvold 2010-10-16 00:42:49

回答

8

由於Git版本1.6.5您可以使用--recursive--init選項git submodule update以確保子模塊初始化遞歸併更新。因此,對於我的例子,以下作品適合我:

$ 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 ...] 

我希望這有些用處。

+0

優秀!我忘記了這個問題,並且關於'git update'選項。 +1 – VonC 2010-11-14 16:00:07