Git submodule相关使用总结

  • git config --global alias.pull "!git pull && git submodule update --init --recursive"

    git config --global alias.pullall "!f(){ git pull "$@" && git submodule update --init --recursive; }; f"

    git config --global --unset alias.pullall 取消别名

    https://cloud.tencent.com/developer/ask/72181

    通过这种方式,可以在git pull的时候,自动拉到submodule的代码,就不用每
    次都执行两步操作了。

  • 对于submodule的开发者来说,需要将submodule的子模块的代码,git add commit push到子模块的远程仓库。
  • 而在主项目中,submodule的开发者需要执行git submodule update --remote 来获取子项目的远程仓库代码,同时执行 add commit push到 主项目的远程仓库。
  • 非submodule的开发者(即主项目开发者) 需要保证每次git pull时,同步执行git submodule update来拿到主项目中的submodule子模块的最新代码,否则可能会出现旧的submodule版本覆盖新的 submodule版本的情况。

注意:

  • 主项目开发者不需要用到git submodule update --remote 。这个操作只有submodule的开发者才需要用到。
  • 包含submodule的代码在合并时,比如从develop 合并到 release分支。 切换到release分支时,会提示FlutterLab有modify,此时注意不要执行add commit push操作,直接合并develop即可。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • git 使用笔记 git原理: 文件(blob)对象,树(tree)对象,提交(commit)对象 tree对象 ...
    神刀阅读 9,155评论 0 10
  • Add & Commit git init 初始化一个 Git 仓库(repository),即把当前所在目录变成...
    冬絮阅读 10,383评论 0 9
  • 获取与创建项目 创建仓库的途径有:在本地已有的目录,初始化一个新的;克隆复制一份别人的项目。 git init 在...
    daking阅读 11,631评论 3 48
  • 配置 首先是配置帐号信息ssh -T git@github.com # 登陆 github 修改项目中的个人信息 ...
    guanguans阅读 4,077评论 0 3
  • 对于一个新的包括submodule的项目调用以下命令即可 或者 配置 首先是配置帐号信息 ssh -T git@g...
    brownfeng阅读 3,355评论 0 0