如何创建补丁系统

时间:2015-01-23 13:16:13

标签: c# .net tfs patch

我对使我们的软件“可修补”的最佳做法有疑问。

我们的产品/公司的一些信息:

  1. 我们使用C#/ WPF创建我们的软件
  2. 使用Visual Studio 2013
  3. 有一些setup-maker(高级安装程序)
  4. 使用TFS进行源代码管理。
  5. 每次我们创建一个版本时,我们都会把它放到tfs中的一个新分支中,这样结构就像这样:

    • - 主要
    • - 发布
    • ----版本1.0.0.0
    • ----版本2.2.0.0
    • ----版本3.3.0.0(不是真实版本号)。

    现在我遇到了问题,我不知道如何使我们的产品可以修补,而不为每个版本制作补丁。因为如果版本1.0.0.0和2.2.0.0中的错误并且我不想安装最新版本(3.3.0.0),我需要修复两个版本(1.x和2.x)。

    有没有办法让我更加优雅和舒适?

    谢谢!

2 个答案:

答案 0 :(得分:3)

根据我的经验,不是真的 - 我曾经在一个非常大的项目上工作,该客户使用许多不同的版本,错误修复应用于所有版本并修补 - 这通常是一个手动(和繁琐)的过程,因为代码库经常在版本之间发生很大变化,因此您无法简单地合并更改。 尝试鼓励客户尽可能升级,并尽可能使用TFS的合并功能。

答案 1 :(得分:1)

您应该转到持续交付模式。您需要更改设计产品的方式,以便可以在任何其他版本的顶部安装任何版本。如果您还确保已经完成了一个完整的定义,并且交付周期很短,那么您将永远不需要安装补丁。只需发布一个新版本,其中包含您尚未准备好显示的功能。

查看http://stories.visualstudio.com,了解howba大型产品是否解决了这个问题。

如果你在思考"那看起来太难了"那么你可能有太多的技术债务(或更多的未经处理的未对冲基金),你需要先解决这个问题。

查看代码和Ready Roll的功能标志或数据库的SSDT。