为什么git子模块操作不自动?

时间:2019-01-23 13:12:47

标签: git git-submodules

似乎git的子模块操作是手动的。作为一个熟练的git用户,我想了解这个设计决策。特别地,似乎git pullgit checkout要做的最令人惊讶的事情是检查pull /签出适当的分支/注释,然后更新所有子模块以匹配其相应的提交。为什么?

如果我设置

,似乎上述功能已启用
[submodule]
        recurse = true

在我的~/.gitconfig中。但是即使那样,当同事添加新模块时,当我git pull master时,即使出现在.gitmodules中,我也没有得到新模块。如果我在.gitmodules上检查新的,然后再做git submodule update --init MODULEPATH,我会得到。但是,为什么这种手动交互会是理想的行为呢?当我pull / checkout时,我是否(几乎要?)总是希望所有模块都更新以匹配吗?

奖金:有没有一种方法可以自动让git提取并签出新的子模块?即,是否有子模块的Just Works模式。如果不是,那么我对使默认行为令人满意的子模块的设计又不了解什么呢?

0 个答案:

没有答案