2010-03-24 44 views
1

我正在研究一個包含三個階段的源代碼的非常大的項目。在SVN旁邊,你如何管理你的開發VS測試vs生產源代碼?

  • 開發源代碼:快速變化的每一秒,並通過我們的QA檢查
  • 測試環境代碼:公佈客戶的QA部門(每2-3周發佈)
  • 生產環境:確認後確定由客戶QA將其發佈爲產品。 (每隔幾個月)

系統(政府網絡應用)是非常大的跟蹤更改,錯誤和修補程序,有時測試人員可以要求改變,另外一些時候的產量可能會問了一個熱修復或小更新。

問題是,當測試或生產請求發生變化時,開發代碼已經發生了很大變化,他們總是警告我們,他們只需要那個小修補程序,不要上傳任何新的東西。

問題是,我應該如何管理3個階段的代碼,然後回到測試或生產代碼的任何領域並修復這個小問題(反映當前開發的變化)?

注意:每次做一個分支太多了,我不希望開發者在更新主流,分支和測試代碼之間丟失!

回答

4

從提供給測試或生產的特定修訂版簽出,並稍後將更改合併回dev。

+1

只是不要忘記合併它們。質量保證部門一簽署就更好地合併它們。 – Thilo 2010-03-24 08:19:22

2

而不是爲每個請求分支中繼(其中將包括與quickchange或修復無關的新代碼)如果從您的prod標記分支並進行更改,然後測試qa並重新部署,該怎麼辦。

+0

+1。當人們希望對一個經過良好測試的系統進行小修改時,他們只想得到這個小修正,而沒有其他改變(開發人員恰好在此期間做出)。否則,影響評估和重新測試將過於昂貴。 – Thilo 2010-03-24 08:21:10

1

每次創建一個分支都太多了,我不希望開發人員在更新主流,分支和測試代碼之間丟失!

從幹線分支出來的每一個補丁都是不必要的(它不會做你的測試團隊需要的東西)。但是,您不能完全避免分支,並且您無法避免您的員工必須在多個分支中工作。

您應該能夠將活動分支的數量降低到(例如)生產中運行的版本的數量,以及測試人員正在使用的版本的數量。

2

其實我覺得你應該有你的三個分支 *發展(主幹) * QA * PROD

的合併是「很容易」(很簡單,合併可)像往常一樣,從合併QA到DEV和從PROD到DEV。 這是我們在許多項目中使用的相當常見的設置。

編輯: 正常情況下,您不必在QA和PROD上再次分支。