# 套裝軟體專案的 Git 分支管理實務分享 在多人協作的 Git 專案中,**如何設計清晰的分支管理流程**,往往直接影響到開發效率與產品穩定性。這篇文章分享我們公司在實務上採用的「四分支策略」,搭配出貨與雲端部署的實際情境,供大家參考。 --- ## 🎯 我們的四大分支角色 | 分支名稱 | 用途 | 對象 | 備註 | |----------|------|------|------| | `dev` | 日常開發 | RD | 功能開發、debug 都在這裡進行 | | `test` | 測試驗證 | QC | 開發完成後合併到此,由 QA 進行測試 | | `main` | 對外穩定版 | PM / 客戶 | 通過測試後合併進來,作為候選正式版本 | | `cloud` | 雲端部署用 | DevOps | 從穩定 `main` 分支產出,搭配雲端設定進行部署 | --- ## 🔄 實際開發流程 1. **RD 在 `dev` 分支開發功能** 所有功能分支從 `dev` 分出,開發完成後 PR 回 `dev`。 2. **定期將 `dev` 合併進 `test`,交由 QC 測試** 測試團隊在 `test` 分支上驗證功能是否符合規格。 3. **測試通過後 PR 合併進 `main`,作為出貨候選版本** `main` 為準穩定版本,可能會交給客戶、PM 試用或出貨。 4. **當 `main` 經實際運行一段時間確認穩定後** → **從 `main` 分出 `cloud` 分支**,進行雲端版本的專屬部署。 --- ## ☁️ 為什麼還要有 `cloud` 分支? 很多人會問:**都已經有 `main` 了,為什麼還要分出 `cloud`?** 因為我們的雲端版本是提供給 **多個客戶共用的租賃版本(SaaS 模式)**,一旦上線後出現問題,影響的就不只是單一客戶,而是整批用戶,會直接導致大量客服回報與信任危機。 因此我們採用以下做法來確保雲端部署的穩定性: - `cloud` 是實際部署到雲端環境的版本,必須 **絕對穩定且經實戰驗證**。 - `cloud` 分支源自 `main`,只會在 `main` 經過一段時間運行、確認穩定後才分出。 - `cloud` 可能會包含特定於雲端環境的設定與部署配置。 - 使用獨立的 `cloud` 分支,也讓我們能針對雲端部署做精細控制,而不干擾到一般客戶的出貨流程。 換句話說,`cloud` 是從 `main` 精選出的 **最終穩定版本**,再加上雲端專用設定,確保對大量租戶的交付品質。 --- ## ✅ 這樣設計的好處 - 明確區分開發、測試、出貨、部署等不同階段。 - 減少主幹污染與出貨風險。 - 讓各角色(RD、QC、PM、DevOps)都有清晰的作業目標。 - 保留每個版本的可回溯歷史,方便維運與除錯。 --- ## 🧩 總結 這套四分支策略讓我們的開發與部署流程更有條理,不再手忙腳亂: ``` dev → test → main → cloud ``` 這不只是一套分支規則,更是一種**團隊協作的共識與節奏**。 --- 你也可以依照自己的團隊規模與工作流程做出調整。如果你也有不同的 Git 流程設計,也歡迎留言交流! ---
×
Sign in
Email
Password
Forgot password
or
Sign in via Google
Sign in via Facebook
Sign in via X(Twitter)
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
Continue with a different method
New to HackMD?
Sign up
By signing in, you agree to our
terms of service
.