規範的版本號與分支模型是團隊協作、持續交付的基石。本文梳理 Maven 版本命名規則、Git 分支策略與發布流程,助力建立清晰可控的版本管理體系。
<dependency> <groupId>com.koala</groupId> <artifactId>soa</artifactId> <version>版本號</version> </dependency>
格式:主版本.次版本.修訂版(如 1.2.3)
| 位置 | 含義 | 變更時機 |
|---|---|---|
| 主版本 (1) | 重大架構重構、不兼容 API 變更 | 項目重構/重寫 |
| 次版本 (2) | 新增較多功能、向兼容的特性 | 功能模組上線 |
| 修訂版 (3) | Bug 修復、小優化、向兼容 | 缺陷修復、穩定性提升 |

規則: 新次版本發布後,舊次版本停止維護。如 1.2.0 發布,1.1.x 最新 1.1.3 凍結,後續修復併入 1.2.1。
格式:主版本.次版本.0-SNAPSHOT(如 1.2.0-SNAPSHOT)
| 位置 | 含義 |
|---|---|
| 主版本 | 專案重啟/重大重構 |
| 次版本 | 功能增量 |
| 0-SNAPSHOT | 固定後綴,表示開發中不穩定版本 |

特性: 依賴 SNAPSHOT 版本意味著構建時自動拉取該次版本最新構建產物,適合開發/測試環境,嚴禁發布到生產倉庫。
v1.2.0)。branch-1.2),分支上為該版本最新開發狀態。
# 開發 1.2 版本新功能 git checkout -b branch-1.2 master # ... 開發、提交 ... # 發布 1.2.0 git checkout master git merge branch-1.2 git tag v1.2.0 mvn deploy -DskipTests # 發布 Release 版 # 修復 1.2 版本 Bug git checkout -b hotfix-1.2.1 v1.2.0 # ... 修復 ... git checkout master git merge hotfix-1.2.1 git tag v1.2.1 # 開發 1.3 版本 git checkout -b branch-1.3 master
MAJOR.MINOR.PATCH[-PRE.RELEASE][+BUILD]。feature/xxx、bugfix/xxx、hotfix/xxx、release/x.y。建立統一的版本與分支規範,能大幅減少「版本衝突、發布錯誤、回滾困難」等協作痛點。