git submodule add 是 Git 中用于将另一个 Git 仓库作为子模块添加到当前项目中的命令。
子模块允许你将一个 Git 仓库作为另一个 Git 仓库的子目录,同时保持它们各自的提交历史独立。

1、基本语法

git submodule add <repository-url> [<path>]

repository-url: 要添加为子模块的 Git 仓库 URL

path (可选): 子模块在项目中的存放路径 (默认为仓库名称)


2、添加子模块后的操作

1.提交更改

git commit -m "Added submodule [repo-name]"

由于"git submodule add"已经把改动放到缓存区,所以执行git commit
在这里插入图片描述
.gitmodules 文件有相应改动:
在这里插入图片描述

2.推送

git push origin XXX

3、拉取带有submodule的仓库

比平常拉取代码多了 --recurse-submodules

git clone [-b xx_branch] --recurse-submodules <project-url>

注意事项
1、子模块会固定指向特定的提交,不会自动更新
2、要更新子模块,需要进入子模块目录手动拉取更新
3、子模块的更改需要分别在子模块和父项目中提交
4、删除子模块需要多个步骤,不能简单删除目录

子模块是管理项目依赖关系的有用工具,特别适合需要精确控制外部代码版本的情况。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐