git子模块使用关键命令

Git submodule关键命令

git clone 指定分支

部分仓库很大,尤其是有大量历史遗留分支,直接clone时间很长,clone完之后切换分支也很久,因此可以只clone某个分支

shell 复制代码
git clone -b XXX git@github.com:username/projectName.git

添加子模块

可能有部分功能很多项目要用,每个项目copy一份代码不方便维护,这时候就可以用子模块来管理。提取出公共的功能模块,形成一个或多个单独的仓库。其他项目要使用时,添加该项目为子模块(submodule),方便拉取代码。

shell 复制代码
git submodule -b branchName --name moduleName git@github.com:username/projectName.git submodulePath
# 可以使用默认名称和分支,-b, --name,submodulePath都可以不传

拉取子模块代码

clone主模块时,不会自动clone子模块代码,需要通过update命令拉取

shell 复制代码
git submodule update --remote

删除子模块

这就比较麻烦了,不知道为啥没有删除命令?

  • 删除子模块目录
  • 删除.git/config中该子模块信息
  • 删除.git/modules目录该子模块文件夹
  • 删除.gitmodules文件中该子模块信息
  • git rm --cached [submoduleName]
相关推荐
微尘hjx8 分钟前
【GitHub 代码仓 02】git命令操作示例
git·elasticsearch·github
阿正的梦工坊4 小时前
Git提交中的perf和chore是什么?
git
Fly feng4 小时前
git rebase 变基操作教程
git
laoliu19964 小时前
开源 FRP GUI 客户端
git·开源·github
YanaDH6 小时前
前端开发新机环境部署(带链接)
git·vscode·npm·node.js
微尘hjx7 小时前
【GitHub 代码仓 03】Git + GitHub 实战速查手册
git·github
艺杯羹20 小时前
Git版本控制深度复盘:从入门到精通的完整指南
git·wpf·版本控制·git学习·git复盘
菩提小狗1 天前
第7天:信息打点-资产泄漏&CMS识别&Git监控&SVN&DS_Store&备份|【小迪安全】web安全|渗透测试|网络安全-2021
git·安全·svn
Ghost Face...1 天前
嵌入式Linux开发Git实战:从认证到Gerrit推送
linux·git·elasticsearch
LeoZY_1 天前
开源项目精选: lazygit —— 告别繁琐命令,终端里玩转可视化Git
git·stm32·单片机·mcu·开源·远程工作·gitcode