递归到一个git回购
如果你git clone
与--recursive
,你可以得到所有的git的子模块了。
如果我忘记在克隆时添加这个神奇的旗帜,可能会发生,我现在该如何去获取任何子模块?
另外,如何将递归标志设置为未来克隆的默认值?
你可以在简单的顶级克隆之后用它做到这一点:
git submodule update --init --recursive
我不建议做克隆默认做这个。 如果您正在积极使用子模块进行开发,而不仅仅是链接到github上的第三方OSS库(您可以在蓝色月亮中升级一次),那么正确的做法是使用git slave或subtree。
希望这可以帮助。
从您的回购的根源:
$ git submodule update --init --recursive
这将更新任何和所有已注册的子模块,如果需要将其初始化为在.gitmodules文件中找到的值,并且还将复制到复杂子模块(具有自己的子模块的子模块)中,并初始化并更新它们。
我知道以递归方式克隆默认值的最简单方法是将git clone
与别名混合使用
$ git config --global alias.clone = 'clone --recursive'
至于总是添加选项,我认为这是惯用的方法。
IIRC, git submodule init
, git submodule update
不幸的是,我没有看到默认启用递归的选项。
链接地址: http://www.djcxy.com/p/92403.html下一篇: Git submodule inside of a submodule (nested submodules)