如何无缝集成多个Git存储库并可能使用配置文件进行构建并将其部署到Web UI?

时间:2019-07-11 09:20:33

标签: git github deployment build continuous-deployment

我们正在尝试按以下方式在Git上组织一个Python Project P1的代码库。该项目用于文档处理。该文档可以具有多个标准(变体),因此需要不同的处理方法,但是所有标准之间的共同点是要处理的组件类型始终保持不变。

后端位于集成仓库中,该仓库具有主模块和包装器脚本,用于初始化和处理每种组件类型,而与标准无关。它只有一个MASTER分支,其作用类似于骨架,并提供项目的顶级功能。我们无意为任何内部版本更改此MASTER中的代码。

前端位于另一个UI仓库中,并且为了支持某些自定义UI,为此提供了另一个仓库。图中显示了三个存储库之间的关系。应当将Web-UI与前端和后端一起托管在云中。

后端与作为开发仓库的4个组件仓库进行通信。每个仓库(A,B,C,D)独立处理特定的文档组件。可以看到,在每个组件存储库下都有MASTER和另外3个分支(B1,B2,B3)。每个分支对应每个文档标准,并且 每个分支下的代码都保存在某些文件夹(1,2,3)中,以指示开发阶段。每个组件存储库的MASTER分支都包含固定的代码集,这些代码集很少更改,并且在那里支持开发,因此非常稳定。 MASTER上的代码应该在所有标准中使用而无需更改。仅分支B1或B2或B3上的代码将被集成以进行部署。

构建:要进行构建,我们可能需要一个配置文件来指定集成路径,例如Repo A:B2:F3 + Repo B:B2:F1 + Repo C:B2:F1 +仓库D:B2:F2。实际上,根据处理量的不同,某些存储库会比其他存储库更活跃。

  1. 我想知道这种用于集成多个存储库并进行构建的Git结构是否有效?将来标准会增加,处理量也会增加。
  2. 可以有其他结构或策略来实现同一目标吗?
  3. 从长远来看,我应该注意哪些事项?如果要完全自动化部署,此策略的不利之处是什么?

Framework for multiple Git repositories integration

0 个答案:

没有答案