小编典典

拉取最新的所有 git 子模块的简单方法

git

我们正在使用 git 子模块来管理几个依赖于我们开发的许多库的大型项目。每个库都是一个单独的存储库,作为子模块引入依赖项目。在开发过程中,我们经常想去获取每个依赖子模块的最新版本。

git 是否有内置命令来执行此操作?如果不是,那么可以使用 Windows 批处理文件或类似文件怎么样?


阅读 841

收藏
2022-02-10

共1个答案

小编典典

如果这是您第一次签出回购协议,您需要先使用--init

git submodule update --init --recursive

对于git 1.8.2或更高版本,--remote添加了支持更新到远程分支最新提示的选项:

git submodule update --recursive --remote

.gitmodules这具有尊重or文件中指定的任何“非默认”分支的额外好处.git/config(如果您碰巧有任何分支,默认为 origin/master,在这种情况下,这里的一些其他答案也可以使用)。

对于git 1.7.3或更高版本,您可以使用(但以下关于更新仍然适用的问题):

git submodule update --recursive

或者:

git pull --recurse-submodules

如果您想将您的子模块拉到最新提交而不是当前提交,则 repo 指向。

详见git-submodule(1 )

2022-02-10