我们有一个 ASP.NET 产品,我们会在 3 个月内不断添加新功能。现在我们有一些更大的功能要实现,这些功能在 3 个月内无法完成。我们希望继续进行这些更改,但不希望在我们做出决定之前将它们提供给客户。但我们确实希望每 3 个月发布一次,我们将包含一些其他较小的功能。这些功能还包括一些数据库更改。
在 ASP.NET 中进行此有条件发布的最佳解决方案是什么。我们暂时不想使用分支和合并,因为这需要付出很多努力。任何建议表示赞赏。
如果没有对您的产品或您要完成的工作有任何进一步的了解,我会说您需要在产品本身中实现这种有条件的发布功能。如果更改更多的是独立模块性质。这样,您可以在整个开发生命周期中保持构建完整性。
但是,在 3 个月以上的发布计划的背景下,我认为分支合并选项并不需要付出很多努力。最多需要几天的时间来设置它,而在开发结束时几天来合并到主分支。如果您的新功能会影响很多地方的大量代码,这无疑是最佳选择。
在任何情况下,不要让你的代码混乱
if (yourapplication.version != someversion)
{
//do version specific stuff
}
else
{
//do other stuff
}
这最终会破坏你的代码库
好吧,最好的解决方案实际上是使用分支和合并。将您的项目分支到“更大的版本”分支中,同时继续在主分支上添加新功能。我想在你完成那些更大的功能之前,完全不进行源代码控制需要付出更多的努力。
我们将Team Foundation Server中的分支用于这样的场景,以便较小的增强功能和事件发布日期不会受到较大项目的阻碍