2012-02-22 57 views
1

我正在嘗試爲多個功能同時進行測試並且至少其中一個未簽名的場景提供良好的分支合併策略利益相關者我希望通過SCM操作和重新測試方面的最小努力,將已簽署的變更轉入生產。當多個更改之一沒有簽署時的分支/合併策略

我正在使用CVS(我無法改變這一點),但問題是SCM技術在某種程度上是不可知的。

想象一下,在任何給定的時間,都有一個共同的基線上正在開發多個功能。他們都在自己的分支機構孤立地工作。在某個階段,構建被推送來測試包含所有完成/測試的樹幹的環境,併合並回樹幹變化。假設有5個分支合併在一起,一個不夠好通過測試,或者由於某種原因沒有被業務部門簽名。

如果有像'unmerge'手術這樣的銀彈,那將是完美的,但據我所知沒有。

我的另一個想法是不將所有的變化合併到主幹,而是將一個單獨的分支合併到主幹,並將該分支的建設從測試服務器推出。如果出於某種原因撤消某些更改,則需要從主幹中分出一個新分支,併合併除撤回的更改外的所有更改。一旦所有更改都被接受,這個臨時分支就可以合併到主幹。

我想知道這是不是過度殺傷。

還有其他想法嗎?

回答

0

雖然這並不能真正回答您提出的問題,但您可能需要查看「持續交付」中討論的功能切換和「通過抽象分支」的概念。這些是允許迭代主線/主幹開發的幾個核心概念。

+0

這是非常翔實的。謝謝!事情是,我們正在處理的大部分項目都是Web應用程序,許多功能/工作請求涉及標記更改。我想不出任何通過標記/ css/js等創建抽象層的方法。 – artur 2012-02-22 17:28:43

+0

artur,替代方案是以醜陋的TEMPORARY「if」語句形式對配置值進行測試的「功能開關」。相信我,我知道這聽起來有多醜。關鍵是認識到它是一種臨時措施,並使得您儘快將這些錯誤消除到您的代碼庫。 – 2012-02-23 21:41:00

相關問題