初始化子模块:git submodule init 更新子模块:git submodule update 递归克隆整个项目submodule:git clone https://github.com/demo.git assets --recursive 递归更新整个项目submodule:git submodule foreach git pull 删除子模块:git rm --cached subMod
# 开发者Bgitclone$main_project_urlcdMainProject# 进入主项目,发现submodule_dir是一个空目录git submodule init# 初始化submodule配置,从.gitmodule读取相关配置git submodule update# 拉取submodule代码到submodule_dir目录 #git submodule update --remote --merge 下面会讲到# 上面2行代码可以用下面这1行代替:gi...
首先执行git submodule init用来初始化本地配置文件,也就是向.git/config文件中写入了子模块的信息。 git submodule update则是从子仓库中抓取所有的数据找到父级仓库对应的那次子仓库的提交id并且检出到父项目的目录中。 git submodule init Submodule'lib'(/path/to/repos/lib.git) registeredforpath'lib'git submo...
参考: Git中submodule的使用 - 知乎 (zhihu.com) 使用场景场景1:面对比较复杂的项目,我们有可能会将代码根据功能拆解成不同的子模块。主项目对子模块有依赖关系,却又并不关心子模块的内部开发流程细节。 场景2:…
git submodule foreach git checkout -- .: 所有子模块进行 checkout -- . 操作。 代码语言:javascript 代码运行次数:0 运行 AI代码解释 NAMEgit-submodule-Initialize,update or inspect submodulesSYNOPSISgit submodule[--quiet]add[<options>][--]<repository>[<path>]git submodule[--quiet]status[--cached...
包括子模块的初始化,如何使用 git submodule add 命令在主仓库添加子模块 如何在子模块和主仓库之间的更新和同步 子模块主要有以下应用场景 不同项目间需要共享同一个公共代码,如基础类库或工具包; 较大的项目需要拆分成多个子项目进行开发,通过子模块控制依赖关系; ...
自己用 Git 已經很長一段時間了,沒用過 git submodule 的話真的是對不起自己,今天來筆記 Git Submodule 一些操作步驟及說明。 git Submodule 使用時機大家在開發新專案的時候,不知道有沒有用到其他專案的程式碼,像是 Web 專案,也許會用到 Blueprintcss CSS Framwork
git submodule 是一个很好的多项目使用共同类库的工具,它允许类库项目做为repository,子项目做为一个单独的git项目存在父项目中,子项目可以有自己的独立的commit,push,pull。而父项目以Submodule的形式包含子…
在project1中push之后其实就是更新了引用的commit id,然后project1-b在clone的时候获取到了submodule的commit id,然后当执行git submodule update的时候git就根据gitlink获取submodule的commit id,最后获取submodule的文件,所以clone之后不在任何分支上;但是master分支的commit id和HEAD保持一致。 查看~/submd/ws/project1...
2.1 创建Git Submodule测试项目 2.1.1 准备环境 1 2 3 henryyan@hy-hp ~pwd /home/henryyan mkdir-p submd/repos 创建需要的本地仓库: 1 2 3 4 5 cd~/submd/repos git--git-dir=lib1.gitinit--bare git--git-dir=lib2.gitinit--bare ...