我們正在嘗試確定在工作中使用的最佳源代碼控制分支策略。我們使用連接到GIT後端的VSO前端。我們有4個數據庫環境,DEV,QA,STAGE和PROD。在任何時候,除了大量正在進行的數據庫清理工作(添加主鍵和外鍵,將列設置爲非空值等)之外,我們有許多團隊正在處理不同的功能,這些功能經常會跳過對方,而且還有很多不同的功能源代碼控制分支策略
我的想法是爲每個數據庫環境維護四個持久分支,以反映其各自的數據庫環境。任何開發新功能的團隊都將從Dev分支,並且在完成工作後,合併到持久DEV分支中。當工作準備好進行質量檢查時,它將被合併到質量檢查中,在它準備移動到STAGE時它將被合併到STAGE等等。任何非破壞性的數據庫更新都不依賴於某種特性(比如使列非NULLABLE)可以作爲變更集流動而不需要特性分支,但是每個潛在的重大更改都需要作爲特性分支工作。
有沒有人使用過這種策略?它有用嗎? 有更好的分支模型,你可以推薦?