git submodule简单使用

柔情痞子 提交于 2020-08-20 01:01:35

git submodule简单使用

  1. 最近项目中使用到git submodule,说明一下,git submodule使用后类似于npm包管理中新增了一个第三方库,在多项目中可以直接引用,但在实际开发应用过程中不会减少代码量。
  2. git submodule可以独立运行,执行git add,commit,push等操作,可以建master/dev等多分支进行管理。
  3. 基础命令总结如下
//1、基础命令
//说明:父项目根文件名为project

cd project
git submodule add http:/yxmBetter/project.git lib    //说明:git submodule add [(-b) 分支名] [submodule的远程URL仓库地址] [本地地址],下载远程submodule默认分支(一般为master)到本地lib文件夹,可以增加‘-b 分支名’来指定分支
git status   //说明:查看生成状态,新增了lib文件夹,.gitmodules文件,.git/config中新增内容,.git/modules/新增lib文件夹

cd lib
git pull    //若远程仓库submodule有更新,需切换到具体子仓库lib下进行git pull来更新
git submodule foreach git pull //一次性更新所有submodule库已有的更新,不用逐步到各个具体文件夹下更新

//2、删除步骤总结,记得全部才能删除干净。。。
  //a. 删除.git/config文件夹中如下内容
  [submodule 'lib']
      url = 'http:/yxmBetter/project.git lib'
      branch = 'dev'  //如果有这一行
  //b. 删除.git/modules/下刚刚创建的lib文件夹
  //c. 删除.gitmodules对应的条目
  //d. 执行git rm --cached [modulename] 命令
  //e. 删除submodule模块内容

//3. 如果在project对应dev分支下使用submodule的dev分支,该如何使用?
// 因为project的dev分支是从master下获取来的,所以会获取到之前master分支的submodule相关内容,如果要获取submodule的dev分支内容,
// 建议先按上述步骤删除master分支的submodule所有内容后再重新使用基础命令更新
// 如果您有更好的使用方式,欢迎留言讨论。

  1. 欢迎底下评论总结更多......
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!