我和我的团队正在使用 Symfony2 开发一个管理多个应用程序的后台。现在我们只有一个应用程序,但在不久的将来,我们应该能够管理很多应用程序。
我们决定在单独的包中开发每个组件(也称为应用程序)。
我们想要的是能够部署整个 symfony2 项目而不用担心(太多)组件之间的副作用。
实际上,理想情况下,我们希望能够在部署整个项目时部署version X
组件A
和version Y
组件。B
为了做到这一点,以下是我们探索的选项:
- 1) 捆绑包是 git 子模块
- 2) 捆绑包位于单独的存储库中,并在
composer.json
项目的主体中进行管理
第一个似乎合法,但我不确定这是一个好习惯:你怎么看?
第二个看起来是处理依赖项(和版本控制)的正确方法,但在生产力方面非常糟糕,因为我们必须推送捆绑存储库的最后一个版本,然后更新作曲家,最后才能在主项目中测试捆绑包.
我知道这是一个悬而未决的问题,但我想得到一些关于这种情况下良好做法的反馈。