2015-05-21 42 views
0

我有一个依赖于其他组件的库。我已经设置了主项目,然后使用git submodule add [url] [path]添加了一些子模块。子模块不与Git同步

原始项目工作正常。每次我添加一个子模块时,它都被克隆到正确的目录中。

- Main project 
-- Sub project [cloned correctly] 

之后,我把原来的项目推到git。现在,当我克隆主项目时,子项目目录出现,但它们是空的。

- Main project 
-- Sub project just empty folder 

的.gitmodules正确填充,但在新克隆的主要项目中,git的/模块的文件夹为空。

没有像git submodule sync或git submodule update这样的命令更新工作。但是,如果我手动重新添加模块,则它们将出现在目录中,而不必重新下载。它说:

Reactivating local git directory for submodule 

这几乎就像git模块存储在内部,但不会将它们添加到文件系统。

这种情况的最佳做法是什么?

+0

可能的副本[如何包括子模块的git克隆?](http://stackoverflow.com/questions/3796927/how-to-git-clone-including-submodules) –

回答

1

克隆后,您需要:

git submodule init 
git submodule update 

OR

克隆主回购并同时获得子模块:

git clone --recursive URL 
1

你缺少

git submodule init 
在克隆

(之前你可以成功运行git submodule update