git-submodule使用指南
起因是这样的,有时候我们的项目中又使用到了另外一个项目,说白点就是就是一个git项目中包含了其他子git项目。
引入
假设我们有两个及以上项目,一个叫notebook
,一个叫loho-docs
,notebook
是主工程,loho-docs
是子模块工程。我们希望在notebook
中添加loho-docs
,而又保持loho-docs
的独立版本控制。
创建submodule
使用
git submodule add <submodule_url> <project_name>
命令可以在项目中创建一个子模块
在notebook
的根目录下执行如下命令
1 |
|
这时候,项目仓库中就会多出两个文件:.gitmodules
和
loho-docs

.gitmodules
的信息
1 |
|
然后提交一下commit
,提交到远程看一下效果。
1 |
|
此时再看git
库,这里的loho-docs
文件夹,点击会跳到loho-docs
的git库,至此submodule
添加成功。

注意此时用git clone
拉取 notebook
项目是不带
submodule
代码的。需要再执行
1 |
|
则会根据主项目的配置信息(.gitmodules
),拉取更新子模块中的代码。
更新submodule
如果我们在主项目和子项目做了修改的话,他其实是分开commit的,可以分开提交。

删除submodule
1 |
|
此时子模块就会被删除。
git-submodule使用指南
https://iplus-studio.top/2022/02/27/git-submodule使用指南/