我混淆了Git子模块的概念。
我创建了单独的存储库,旨在成为另一个项目的子模块,然后在主项目存储库中添加了空文件夹,以便添加这些文件。
示例:
MyProject/
./lib
./headers
./source
这些文件夹是空的,因为内容将作为子模块来自单独的存储库,但事实是它们的命名方式不同。
lib/
的内容将来自lib_trunk
子模块,来源称为source_trunk
有没有办法调整git中的子模块功能,而是将repo克隆为命名,它只会添加存储库中包含的文件?
答案 0 :(得分:2)
您不需要提前创建文件夹,git会为您完成。这些文件夹的名称可能与它们包含的-submodule-存储库的名称不同。
git submodule添加
url/to/lib_trunk
lib
将从名为lib
的存储库初始化lib_trunk
文件夹中的子模块。与source
相同。
正如您所说,lib
和source
已经存在,您可能必须在执行git submodule add
之前将其删除(但由于它们是空的,因此没有理由保留它们)。