2011-05-18 29 views
0

我想知道這種情況下最好的分支策略是什麼。我的公司正在計劃對他們的Web應用程序進行重大改寫,這將改變大約50%的代碼並可能需要幾個月的時間。雖然這一發展正在發生,但我們還需要對當前版本的應用程序進行較小的增強。主要重新設計的分支策略

我正在考慮在trunk上開發重寫併爲當前版本創建一個分支。由於我們需要對當前版本進行更改,因此我們將它們放在分支上,然後將它們合併到主幹中。重寫完成後,它將已經將分支的所有更改合併到它中,因此它將準備好發佈。對這是一個好策略還是有更好的策略有任何意見?

回答

3

如果你在幾個月的時間內重構當前的應用程序,並在一個大爆炸中發佈它,你可能會有一個應用程序仍然包含大量未使用的代碼,錯誤的代碼,並且不完全符合你的要求(會那麼)要它做。

如果你確實想繼續一個大型項目,在半年內發佈大爆炸,你最好從頭開始,只複製你真正可以使用的作品。對當前應用程序的任何修復和增強功能也必須針對新應用程序進行修改,儘管它們可能以不同的方式解決。你可能仍然可以複製大量的代碼。

但是最好的解決方案:儘量不要進入幾個月的發展軌跡。重構當前代碼並儘快釋放每個重構件,以便在開發下一個代碼時進行嚴格的測試和評估。如果您正在編寫新的應用程序,請執行相同的操作。儘可能快地開始使用它,並隨時加以改進,並將反饋結合到最終結果中。

對不起,我對分支和合並這麼少說。是的,你描述的方式是經常做到的。但是,不,我不認爲這是正確的方式,因爲您不希望以這種方式將舊代碼中的修復程序合併到新應用程序中。

+1

+1,如果不是用於回答實際問題,則用於合理的建議。不要根據舊代碼進行重寫。根據經驗教訓從頭開始重寫。 – 2011-05-18 23:28:36