我可以将.gitmodules文件放在子目录中吗?

时间:2013-09-05 02:04:13

标签: git version-control git-submodules

假设我的repo索引根目录在/project dir中。 如果.gitmodules也在这个目录中,或者我可以将其放入,请说/project/subdir

我之所以这样做是因为我有多个贡献者,我希望每个人都对自己的子模块负责。

1 个答案:

答案 0 :(得分:4)

Debian Wheezy的

man gitsubmodule说:

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

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

project/
|
|--subproject-1/
|  `--.gitmodules
|--subproject-2/
|  `--.gitmodules
|--.gitmodules
项目根目录中的

.gitmodules 将定义模块子项目-1 子项目-2 。子项目相关模块也可以使用子项目-N / .gitmodules 进行定义,但这些设置只会影响正确的子项目范围。

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

git submodule update

但是,如果您想更新子项目-1 子项目-2 的依赖关系,请使用:

git submoudle update --recursive