当主项目中用Git管理源代码,并且项目中用submodule方式引入了子模块,当子模块更新代码后,在主项目中如何更新子模块最新代码呢?

执行之模块更新步骤

1.如果是第一次pull子项目代码

1
git submodule init

2.然后执行:

1
git submodule update --remote --recursive

这个命令,只是更新子模块的branch和commit id信息,并不会pull新代码

3. 然后,进入主项目中子项目的目录

1
git pull

4. 后续,如果主项目所引用的子项目的branch发生了变化,则在第3步时执行:

1
2
3
4
5
git fetch

git checkout submodule_newBranch submodule_newBranch

git pull

另:

在第4步中,在 git fetch 之后,如果使用的用jetbrain的IDE工具,比如IDEA / GoLand等,它们会管理远程仓库,此时可以通过点击右下角的branch弹出窗口,来选择需要checkout子项目哪个分支。


说明:本文是收集参考文档,以方便查看(侵删)


信息链接:

  1. Git submodule update,如何更新子模块

=================我是分割线=================

欢迎到公众号来唠嗑: