我正在开发一个symfony 2网站,它是我们公司销售的产品(每个客户都有自己的安装)。
我们的每个客户端都有一个略有不同的网站版本:有时差异很小(不同的字符串,略有不同的模板),有时它们更大(激活不同的包,不同的数据库模式,不同的security.yml文件等。)
目前每个版本都位于自己的git分支上。这是现在有效的,因为我们只开始销售,但还没有很多客户(=分支机构)。
但我想转向更好的解决方案。 有什么想法吗?
谢谢, 甲
答案 0 :(得分:1)
我不认为分支是一个很好的解决方案,因为它不适用于这种用例。正如我所看到的,分支应该用于分段或功能/修复。
正如我所看到的,你几乎没有选择(如果你不熟悉这些选项,你应该在我附上的链接中阅读更多关于它们的信息):
另一个选择就是这样做"旧学校" ..如果他们都在同一台服务器上,只需保留"核心"在根文件夹中的东西,并包含在每个项目中。这不是一个推荐的方式,但它可能已经足够,并且不需要你做出太多改变
答案 1 :(得分:1)
我不同意。如果它是单个应用程序,那么每个客户端或版本的分支,即需要单独历史记录(变更跟踪)的配置,正是正确的做法。客户端使用/共享相同的应用程序,"核心"等等,但是您可能希望控制何时将一个客户端的功能/错误中的更改合并到其他配置(即分支机构)中。每个客户都必须进行升级"通过手动分别从开发分支到客户端分支。您希望支付此开销以获得稳定性和隔离。
至于你提到的具体差异:
HTH。 ; O)