我有一个包含git子模块的存储库,例如pthread-win32。当我在Linux上运行git submodule update --recursive --init
时,所有子模块都会无条件更新。即使子模块pthread-win32
也被不必要地克隆。
我只想克隆任何特定本地平台所需的子模块。
是否有一种方法可以告诉git根据某些条件(例如本地平台的名称)递归更新哪些子模块?
答案 0 :(得分:3)
从get()
,您可以提供要更新的特定子模块的路径作为参数:
man git submodule
如果模块数量很少,则可以多次使用上述命令。 否则,作为一种解决方法,您可以将所有选定的子模块放入一个目录,并按如下所示使用通配符-
git submodule update --init --recursive path/to/submodule/dir/