gitlab 创建子模块 git submodule 教程

最好理解的submodule教程,最符合逻辑的思维方式创建子模块教程 (1)在gitlab上创建一个空的仓库,这个称为主模块,在这个模块里面再创建子模块。 (2)在gitlab上再次创建一个空的仓库,这个空仓库是子模块,子模块还要创建一个文件,要提交到这个模块里面,因为子模块需要有commit 信息,主模块就是要链接到子模块这个commit信息里面(如果你已经有了子模块,并且提交过commit,可以不用创建) (3)在本地的位置去把步骤(1)创建的主模块git clone 到本地 git clone http://******************** (4)进入到主文件夹里面 (5)这一步要添加子模块了: 使用命令:git submodule add http://*************** (这个地址是步骤 2 里面的子模块的地址) 如果有报错: fatal: A git directory for //’ is found locally with remote(s): origin http://**************** 没关系,说明你本地有子模块了,那么使用命令: git submodule add --force http://*************** 这时,你会发现本地有了子模块了。 (6)检查下:现在检查下状态: git status 你会发现子模块已经添加进来了 .gitmodules (7)把这些文件添加到主模块: git add . git commit -m “test” git push -u origin master (8)去往gitlab上查看仓库,发现了 子模块已经添加进来了,子模块是以链接形式添加进来的,后缀还是@2ad992bd 的16进制符号这是你的子模块的commit id,当你点击这个文件夹就会跳到子模块去,这样子模块添加完毕。 (9)别急还没完事。 (10)去往本地,删除本地的主模块,因为我们要从gitlab 仓库去拉取主模块 (11)主模块 git clone http://***************(主模块地址) (12)进入主模块 (13)进入主模块你发现子模块也被拉下来了,好的 (14)进入子模块文件夹,发现子文件夹没有东西,你的子模块明明是有东西的,好,没问题,下一步。 (15)在主模块的文件夹下,输入命令: git submodule update --init --recursive (16)再看,你就发现代码已经有了 (17)若是子模块更新了内容,主模块怎么更新? git submodule update --remote (18)你会发现子模块更新了,那么这个时候git status ,有新的东西变化 (19)提交新的变化到主模块 git add. git commit -m “update” git push -u origin master (20)去gitlab主模块看到新的变化 (21)完结!!

经验分享 程序员 微信小程序 职场和发展