git submodule的使用笔记

2020-05-13  本文已影响0人  笑靥千年

子模块的添加

添加子模块非常简单,命令如下:

//git submodule add <url> <path>
git submodule add git@github.com:xiaoyeqiannian/alita.git alita

其中,url为子模块的路径,path为该子模块存储的目录路径。

执行成功后,查一下状态

//git status
......
Changes to be committed:
  (use "git rm --cached <file>..." to unstage)

    new file:   .gitmodules
    new file:   alita

会看到项目中除了子模块外,还增加了.gitmodules文件,打开文件查看,其实就是刚才add的url和path

[submodule "alita"]
    path = alita
    url = git@github.com:xiaoyeqiannian/alita.git

可以试试,在alita目录下,git操作就是子模块的,在外面操作就主模块的,互不影响,最后提交即完成子模块的添加

git commit -m "add submodule"

子模块的使用

平常用的话主要就是更新子模块的代码

git pull origin master

如果说不用这个子模块了,删除方法如下

//删除子模块目录: rm -rf 子模块目录
rm -rf alita

//删除项目目录下.gitmodules文件中子模块相关条目
vim .gitmodules 

//删除配置项中子模块相关条目
vim .git/config 

//删除modules下相关目录
rm -rf .git/modules/alita

删除模块下的子模块目录,每个子模块对应一个目录,注意只删除对应的子模块目录即可
执行完成后,再add commit就好了,如果仍然报错,执行如下:

//git rm --cached 子模块名称
git rm --cached alita

完成删除后,提交到仓库即可。

上一篇 下一篇

猜你喜欢

热点阅读