7

假设我的回购索引根在/project目录中。也应该.gitmodules在这个目录里面,还是我可以把它放进去,比如说/project/subdir

我想这样做的原因是因为我有多个贡献者,我希望每个贡献者负责他自己的一组子模块。

4

1 回答 1

4

man gitsubmodule关于 Debian Wheezy 说:

...
SYNOPSIS
   $GIT_WORK_DIR/.gitmodules
...

根据这个.gitmodules文件的默认位置是 git 工作树的顶级目录。所以,假设你有这样的项目结构:

project/
|
|--subproject-1/
|  `--.gitmodules
|--subproject-2/
|  `--.gitmodules
|--.gitmodules

项目根目录中的.gitmodules将定义模块subproject-1subproject-2。子项目依赖模块也可以用subproject-N/.gitmodules定义,但这些设置只会影响适当的子项目范围。

要更新您的项目依赖项,您应该使用命令:

git submodule update

但是,如果您还想更新subproject-1subproject-2的依赖项,请使用:

git submoudle update --recursive
于 2013-09-05T04:30:25.947 回答