Git递归更新子模块

标签 git git-submodules

我的项目结构

ProjectA
-FrameworkA (submodule)
--Twig (submodule of FrameworkA)

如何递归更新子模块?我已经尝试了一些 git 命令(在 ProjectA root 上)

git submodule foreach git pull origin master

git submodule foreach --recursive git pull origin master

但无法 pull Twig 的文件。

最佳答案

git submodule update --recursive

您可能还想使用 --init 选项,这将使它初始化任何未初始化的子模块:

git submodule update --init --recursive

注意:在一些旧版本的 Git 中,如果您使用 --init 选项,可能不会更新已经初始化的子模块。在这种情况下,您还应该运行不带 --init 选项的命令。

关于Git递归更新子模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10168449/

相关文章:

Git:使用 key 文件但不使用 ~/.ssh/config 通过 ssh 访问远程存储库

git 克隆 git@myserver :gitolite-admin fails

git pull 错误 :error: remote ref is at but expected

git pull --rebase 原始标记名?

git - `git pull` 没有任何反应

git submodule init 没有 pull 最新的提交

git - 如何 merge 子模块并始终保持 "ours"?

git - 使用具有许多子模块的项目实现 git 流的最佳方法是什么

git - 目录变成子模块后 merge

gradle - 如何在 gradle 项目中配置依赖项,使其也可以作为子模块工作?