如何为多语言项目管理位存储库

时间:2019-12-06 18:28:02

标签: git

我正在研究一个由多个模块组成的项目。
大多数模块是用Java编写的,但有些是用C ++和Python编写的。
当前,我为每个模块都有一个单独的存储库,并且正在使用git子模块来一起管理它们。

我想知道什么是编程语言方面的最佳实践。是否建议为Java编程模块提供一个存储库,为Python提供一个存储库,还是将它们都存储在同一存储库中是完全可以的吗?

设置回购结构时应考虑哪些因素?

谢谢

1 个答案:

答案 0 :(得分:1)

从git的角度来看,开发哪种语言都没关系。

  

目前,我为每个模块都有一个单独的存储库,并且我正在使用git子模块来一起管理。

这是一个合适的解决方案,并且很有意义,因为它允许您按照自己的描述开发独立的模块。

另一种较不方便的解决方案是使用子树并将每个模块放在不同的分支中。 git subtree管理整体存储库中的所有代码,而子模块每个模块使用不同的存储库。


  

设置回购结构时应考虑哪些因素?   有很多注意事项-您可以考虑的几个方面

  1. 任何模块都有自己的生命(开发周期,构建周期,发布周期等)
  2. 模块之间有什么关系?他们在一起吗?
  3. 每个模块可以单独使用吗?
  4. 能否将每个模块转换为微服务并分别部署每个模块?
  5. 每个存储库都有自己的工作流程吗?
  6. 您是否需要限制访问不同的帖子

所以基本上,它更像是基于意见的考虑因素

还有更多......