当前位置:   article > 正文

git 子仓库(submodule)操作_gitlab submodule

gitlab submodule

1、在主仓库添加子仓库:

        直接在主仓库路径下clone子仓库代码,如我的主仓库是test_git_master,clone到src/perception路径,clone完用git status查看,会提示有修改:

        此时如果执行git add .  命令,会提示我们这修改和submodule相关;

         将该子仓库加入主仓库:

  1. git init #初始化一个git 本地仓库
  2. git submodule add <sub_git_url> 相对路径 # <sub_git_url> :子仓库git地址 相对路径:子仓库.git相对于当前的路径,
  3. #如我的是git submodule add http://192.168.1.000:8081/zhangsan/test_git.git src/perception/test_git
  4. git commit -m "commit msg"
  5. git push

         此时再刷新gitlab网站,能看到子仓库已经被添加进去了

2、在主仓库里的子仓库进行修改并提交

        在子仓库做一些修改,然后提交到子仓库,并在主仓库进行更新,子仓库有自己的工作区和.git目录,首先需要提交、推送子模块的更改:

  1. cd path/to/submodule # 此处cd到子仓库目录下
  2. git add .
  3. git commit -m "msg"
  4. git push

        然后主仓库来跟踪更新:

  1. cd /main_project #我的是test_git_master
  2. git add path/to/submodule #比如git add src/perception/test_git
  3. git commit -m "msg"
  4. git push

         此时刷新子仓库与主仓库gitlab网址,能发现它俩都被更新;

3、主仓库更新其他地方修改的子仓库

        也就是子仓库在其他地方被修改并push,我们的主仓库以及其中的子仓库还没反应过来;

  1. git submodule update --init #初始化版本
  2. git submodule update --remote #更新到最新版本

4、clone已经添加子仓库的主仓库

        和常规clone一样把主仓库clone下来,然后发现子仓库是空的,在主仓库目录执行:

  1. git submodule init
  2. git sumodule update --remote

        这样子仓库代码就下载好了。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/617616
推荐阅读
相关标签
  

闽ICP备14008679号