我有一个包含嵌套子模块的 git 仓库。下面两个命令有什么区别?
git submodule update --init --recursive
git submodule foreach --recursive git submodule update --init
最佳答案
git submodule update --init --recursive
子模块 update
命令将递归到已注册的子模块,更新和初始化(如果需要)它们以及其中的任何嵌套子模块。
git submodule foreach --recursive git submodule update --init
foreach
将评估每个 checkout 的子模块中的命令。因此,由于 --recursive
,它将更新和初始化(如果需要)每个子模块和其中的任何嵌套子模块。
所以最终,这两个命令将实现相同的目的。 只是执行不同,第一个命令不会进入每个目录执行命令。
关于git - 'git 子模块更新 --init --recursive' VS 'git submodule foreach --recursive git submodule update --init',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24057871/