Git 通过submodule添加子项目/库(转)
Git归并有两种策略:递归,章鱼。
1.递归策略:当分支数只有两个的时候。
2.章鱼策略:当分支数大于两个的时候。
Git会自动选择归并的方法。
3.子树策略:是Git另一种归并方法。(submodule)
它可以把另一个子项目,嵌入到当前项目。而且会非常聪明的合并这些子项目。(以后就不会有困惑了,在引用其他项目时。)
Git使用submodule命令:
|
1
2
3
4
|
#添加子模块:git submodule add ~/git/libs/lib1.git libs/lib1#git会在项目下生成.gitmodulecat .gitmodule |
|
1
2
3
|
[submodule "libs/lib1"] path = libs/lib1 url = ~/git/libs/lib1.git |
|
1
2
3
4
5
6
7
8
|
#进入libs/lib1目录cd libs/lib1#操作新的库lib1,看得出是lib1自己的库remote信息。git remote -v#进入项目根目录,初始化submodule,更新submodule(必须在根目录执行命令)cd ../../git submodule initgit submodule update |
在 libs/lib1/ 目录下添加文档,发现新增加的子模块lib1,在git状态列表中,多了个(untracked content),并不会把lib1库下的所有改动,在git status体现出来。(方便了项目管理子模块)
像操作git一样在子模块管理git工作区。

浙公网安备 33010602011771号