我刚刚在一家允许客户定制的产品公司开始了一份新工作。我在产品 A 上工作。
例如,产品 A 出售给客户 1 和客户 2。所以每个客户都要求自己的定制。这些定制必须与主流功能分开。但是,新的主流功能必须包含在每个客户端的副本中,同时保留他们自己的定制。
客户可以请求自定义,从简单的字段命名或添加/删除网格或报告列到添加/删除整个页面或模块。
我们刚刚开始使用 SVN 来管理我们的 C#.net 代码。
我的问题是:根据任何人的经验,在减少重复工作的同时管理所有这些要求的代码的最佳方法是什么:
- 适用于所有客户的主流产品功能。
- 将每个客户的定制分开,并在客户产品的整个生命周期内为客户保留。
分支可能会解决部分问题,但主流功能不会包含在客户端版本中。
我希望这个问题足够清楚,请尽可能清楚地解释您的建议,也许可以举例说明。谢谢