有一个多模块项目,某个模块下挂着submodule的子项目,这个项目刚clone下来后,需要去submodule所在的目录,执行git submodule命令,获取submodule的所有代码。
废话不多说,下面一行命令解决所有问题
git submodule update --init --recursive
其实,可以把 git submodule update --init --recursive 拆分成几个独立的命令并按照顺序依次执行。拆分后的顺序执行如下:
初始化子模块:
git submodule init
更新子模块:
git submodule update
递归地初始化嵌套子模块:如果子模块中还包含子模块,可以递归执行以下命令来初始化并更新所有嵌套的子模块:
git submodule foreach --recursive git submodule init
git submodule foreach --recursive git submodule update
执行上述命令后,主项目的所有子模块(包括嵌套子模块)都会被初始化并更新到指定版本。