iT邦幫忙

0

現行 Git 分支策略、上版流程碰到問題

git
  • 分享至 

  • xImage

各位前輩好,我們團隊 Git 分支策略上版流程
https://ithelp.ithome.com.tw/upload/images/20230110/20094721C2pnQZeJHg.jpg
Feature 1 專案優先權 3
Feature 2 專案優先權 1
Feature 3 專案優先權 2
Feature 4 專案優先權 1
目前這種方式碰到了問題

  1. Feature 1、Feature 2 兩個功能使用到的邏輯重疊,當 Feature 1 改了,Feature 2 開發者不知會用到,所以 Feature 2 上到 Production 就掛了,需要用 Hotfix 修。
  2. Feature 1 因為優先權關係,有可能進 QA 測過幾輪,但卡到優先權較後面,優先權 1、2 的工作源源不絕出來,開發者先去做其他專案、或者修好躺在那等著被測試,導致 Feature 1 一卡在 Dev、QA 半年都有可能,這時 Dev、QA 分支就髒了。如果要把 Dev、QA 都 Revert 掉,這兩個環境 Code 會壞掉,佈署也會故障,也是得花時間修。
  3. 原本想說新功能若都從 Production 切出來開發最乾淨,應該可以避免上 Production 故障,但上 Dev QA 可能要解不少衝突(髒了,太多要上不上程式卡在上面)。我看許多 Git flow 一開始是先從 master 切分支到 dev ,再從 dev 切到功能分支做開發,而後續功能也一律由 dev 切分支,所以我想法可能也錯。

不曉得各位前輩公司是怎麼樣的分支策略來開發或修改功能,謝謝

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

0
poison3804
iT邦新手 4 級 ‧ 2023-01-10 10:55:32

以我們公司來說,
不管是開發新功能或是修BUG都是先從dev拉分支出來(功能分支),

測試環境也是先前就從dev拉出來的分支(dev_test),
我們所有人只要功能分支完成後,都是先合併到dev_test然後部屬到測試網址做測試,
確認測試都OK之後才會把功能分支併回到dev上正式網址。

不過也有可能是工作分配或是程式架構的問題,
畢竟本來就要盡量避免同一份文件被多個人修改,這樣才能減少衝突。

vicentli iT邦研究生 4 級 ‧ 2023-01-11 06:58:23 檢舉

感謝回覆,我參考一下作法,想想看

我要發表回答

立即登入回答