2012-12-14 45 views
1

我们有一个为我们自己的公司实施的应用程序。 到时候,应用程序已被各公司采购。如何管理在不同客户系统上运行的源代码?

对于每一个公司,我们在源控件创建一个新的TFS分公司。并且每一个都根据特定的客户需求进行了更改。

这就是为什么源代码现在有很多版本。 进行变更变得非常困难,因为如果变更来自一个共同的结构,那么需要对每个分支单独进行变更并进行测试。

什么是管理源代码的最好和传统的方式?

最好先有一个可以在每个客户的系统上运行一个单一的解决方案。

回答

3

有几种方法来处理特定客户的定制,其中包括:

  • 保持一个完全独立的分支每个客户和最终分支之间合并代码。这是您现在部署的解决方案。
  • 构建应用程序的方式是您拥有可插入定制挂钩的客户无关“内核”。只有定制将保存在独立的独立存储库中。
  • 将自定义设置放入通用应用程序并使其可配置(“开/关”)。

要采取的路线取决于应用程序的性质和每位客户的自定义数量。如果上下文允许,单独的分支由于手动合并,错误修复和测试开销而最不利。

在一个特定的行业(电信计费系统),我已经看到了所有三个:供应商谁与专用代码分支工作,其他的可插拔的定制和配置过的,现成的产品。当然,每个供应商都具有不同级别的定制灵活性,生产水平和集成方法。

作为一家软件供应商大的权衡是平衡的定制灵活性与productification的电平。

相关问题