--- title: "#17 版控策略大亂鬥 - 筆記共編" tags: Meetups --- 被抽到要講的內容: 1. 簡單自我介紹,至少講職位,與寫什麼語言的程式 2. 目前公司或曾看過的版控流程,有需要的話可以分享畫面 3. 版控流程對應到的上線流程 4. QA 時間 ## Gson 版控使用 GitLab Flow Release 的時候會選擇幾個重要的功能併上去 ## VP 版控與 CD 切開,為了避免 push 去影響其他環境,包括測試環境 佈版方式可以參考: <https://github.com/VdustR/likftc/blob/8f402f0/.github/workflows/build.yml#L34> ## Sean 不同的客戶開不同的 branch ## JJ & 雷大 從 Master 開 feature branch 再發 PR 回 Master,要上線的時候再 merge 進 release branch feature 回 master 使用 rebase,hotfix 使用 squash。 hotfix 上 release 用 cherry-pick ![](https://i.imgur.com/gbgJpZD.png) ## Ban 一條線 部屬是進機器再 pull 程式碼(PHP)下來,若有套件依賴的話,會人工處理。 ## QQBoxy aka QQ 全端工程師,Node.js 採用 GitLab Flow 人工進客戶主機部署 + 測試 測試有問題,會使用 featrue toggle 關閉功能。 開 Issue 就會開對應的 feature branch,開 Merge Resuest 後會 Code Review,Issue 若 Merge 回 master 後會跑 Unit Test。 佈署的部分會根據不同 OEM 有不同方式,有合作研發關係的 OEM 會先進 rc branch 再進 production,只是簡單修改的會直接進 production。 當進到 rc branch 後,並不會全自動封裝,我們會透過公司自己寫的封裝工具,封裝好一個版本後,再人工丟到對方的 Test Server 去佈署。 我們的 TE 與 客戶的合作團隊 會在 RC Server 做測試,Release 的部分,則直接 e2e 測試。 客戶當下測試有問題的話,有 Feature Toggle 就會直接關掉,沒有的話就人工降版回去。 ## William ![](https://i.imgur.com/HSe54bw.png) ## 邊緣人 使用 Git Flow QQBoxy: 請問一下,由於我們 Jira 是 TE 團隊在用,會由主管從 Jira 上面把 Issue 整理後建到 IT 團隊的 Gitlab Issue,想請問你們有什麼好方法做 Issue 的關聯嗎? Anser: 在 commit 時,就同時把 Gitlab Number 與 Jira Number Key 上去來做關聯。 ## Mandy Jira 多個單與 Gitlab Issue 的關聯