张芷铭的个人博客

语义化版本(SemVer)是软件行业最主流的版本号约定,通过版本号快速判断变更风险。

格式

1
X.Y.Z-先行版本号+编译信息
组成含义示例
X(主版本号)不兼容变更,API 断裂2 → 3
Y(次版本号)新增功能,向下兼容3.8 → 3.9
Z(修订号)仅修复 bug,100% 兼容3.8.1 → 3.8.2
先行版本号预发布版本-alpha, -beta
编译信息技术溯源,不影响优先级+001, +时间戳

版本范例

版本解析
1.0.0-alpha+001预发布 alpha 版,第 1 次构建
1.0.0+20130313144700正式版,带构建时间戳
1.0.0-beta+exp.sha.5114f85beta 版,带 Git 提交哈希

关键规则

  • 1.0.0 是第一个核心版本,界定公共 API
  • 0.x.x 表示一切可能随时改变
  • 先行版本优先级:alpha < beta < rc < 正式版

官方文档

semver.org

Comments