子模块的文件未签出

时间:2010-10-15 02:27:26

标签: git git-submodules

我正在尝试添加外部仓库作为我的仓库的子模块,所以我跟着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目录就是我在结帐/克隆中看到的,以及子目录和文件或src,但我没有自述文件,例如。

1 个答案:

答案 0 :(得分:9)

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

我希望有一些用处。