我們在ASP.NET中有一款產品,我們在3個月內不斷添加新功能。現在我們已經有了一些更大的功能來實現,這些功能在3個月內不會完成。我們希望繼續努力改變這些變化,但不希望它們在客戶決定之前供客戶使用。但我們確實希望在3個月內發佈一次,其中包含一些其他較小的功能。這些功能還包括一些數據庫更改。ASP.NET中的條件功能發佈版
在ASP.NET中製作此條件發佈的最佳解決方案是什麼?我們現在不想使用分支和合並,因爲這需要付出很多努力。任何建議表示讚賞。
我們在ASP.NET中有一款產品,我們在3個月內不斷添加新功能。現在我們已經有了一些更大的功能來實現,這些功能在3個月內不會完成。我們希望繼續努力改變這些變化,但不希望它們在客戶決定之前供客戶使用。但我們確實希望在3個月內發佈一次,其中包含一些其他較小的功能。這些功能還包括一些數據庫更改。ASP.NET中的條件功能發佈版
在ASP.NET中製作此條件發佈的最佳解決方案是什麼?我們現在不想使用分支和合並,因爲這需要付出很多努力。任何建議表示讚賞。
沒有任何進一步的洞察你的產品或你想要完成的東西我會說你需要在產品本身實現這種條件發佈功能。 如果更改更多是獨立模塊的性質。通過這種方式,您可以在整個開發生命週期中保持構建的完整性。
但是,在3個月以上的發佈計劃中,我會爭辯說分支合併選項不需要付出很多努力。最多幾天前設置它,並在開發結束後幾天合併成主分支。 如果你的新功能會影響很多地方的很多代碼,這當然是最好的選擇。
在任何情況下,不要用
if (yourapplication.version != someversion)
{
//do version specific stuff
}
else
{
//do other stuff
}
這搞亂你的代碼最終會毀掉你的代碼
那麼,最好的解決方案實際上是使用分支和合並。將您的項目分支爲「更大版本」 - 分支,同時不斷在主分支上添加新功能。我會想象它會花費很多更多的努力不是來源控制任何東西,直到你完成這些更大的功能。
感謝Thomas Krantz – Shetty
您現在使用什麼樣的源代碼管理? –
@UrbanBjörkman:我們正在使用Accurev。 – Shetty
感謝UrbanBjörkman。我不想和分支合併,不幸的是我們有Accurev的來源。在Accurev上分支和合並並不像在TFS中那麼簡單。我只能選擇通過配置來控制它。 – Shetty