Git子模块的添加和删除
2022-03-08 本文已影响0人
二班老许
添加子模块
1. 添加子模块地址和路径
url为子模块的路径,path为该子模块存储的目录路径。
git submodule add <url> <path>
执行成功后,git status
会看到项目中修改了.gitmodules
,并增加了一个新目录(为刚刚添加的路径)。
git diff --cached
查看修改内容可以看到增加了子模块,并且新文件下为子模块的提交hash摘要。
2. 修改子模块的分支
git submodule set-branch --branch <分支名> <子模块路径>
3. 添加修改
git add .
git commit -m "添加了子模块"
git push
4. 子模块的使用
克隆项目后,默认子模块目录下无任何内容。需要在项目根目录执行如下命令完成子模块的下载
git submodule init
git submodule update
或
git submodule update --init --recursive
执行后,子模块目录下就有了源码。
5. 子模块的更新
进入到子模块目录下拉取更新
git pull
完成后返回到项目目录
git add .
git commit -m "更新了子模块"
git push
删除子模块
- 删除子模块目录及源码
rm -rf <子模块目录>
- 删除项目目录下.gitmodules文件中子模块相关条目
vi .gitmodules
- 删除配置项中子模块相关条目
vi .git/config
4. 删除模块下的子模块目录
rm .git/module/<子模块目录>
5. 清子模块缓存
git rm --cached 子模块名称
6. 提交修改
git add .
git commit -m "删除了子模块"
git push