我正在查看关于在GIT中使用子模块的这个解释(在我的例子中,我使用Gitlab来存储代码而不是github)。
我正在审核此处提到的说明: 链接1:Working With Submodules
我也在看这个项目: 链接2:Gitlab Submodules
在LINK 1中,似乎主要存储库(父级)和子存储库(子模块)只是Git系统中的常规存储库。
在下图中,我希望(作为一个例子)拥有每个存储库的分支(用于开发,测试和生产)。
每个级别都是(对于父级:TEST是PROD的FORK,DEVL是TEST的FORK):
testme.com:DEVL/restapi-field.git
testme.com:TEST/restapi-field.git
testme.com:PROD/restapi-field.git
每个级别都是(对于子模块:TEST是PROD的FORK,DEVL是TEST的FORK):
testme.com:DEVL/submoduleOne.git
testme.com:TEST/submoduleOne.git
testme.com:PROD/submoduleOne.git
根据LINK 2,应该使用名为.gitmodules
问题是,.gitmodules
将在父级中以不同的方式定义(基于它所在的组)。再看看图片。
如何实现这个?
我见过一些人只需要定义所有需要的文件(例子):
.gitmodules.development
.gitmodules.test
.gitmodules.production
然后每个级别(即开发,测试,生产)都适用于最适合它的文件。
詹金斯也在这种情况下使用。我应该在詹金斯做以下工作:
.gitmodules
复制到存储库中
(例如:cp .gitmodules.development /.gitmodules)人们可以考虑的其他选择吗?
TIA