版本号规范

更新时间:
2024-12-27

版本号规范

为了确保 Armory 软件仓库的健康、可靠和安全性,并便于用户准确理解每个版本的软件包变化与兼容性,所有发布的新版软件包必须遵循 Semantic Versioning open in new window 语义化版本控制规范,并支持引入预发布版本号和构建版本号。

格式

版本号采用 X.Y.Z 格式,并可根据需要附加预发布版本号构建版本号。最终的版本号割伤如下:

X.Y.Z[-pre-release][-build-meta]
  • X:主版本号,表示不兼容的 API 修改或功能变更。
  • Y:次版本号,表示向后兼容的新功能。
  • Z:修订号,表示向后兼容的错误修复或小范围改动。
  • -pre-release:预发布版本号,用于标识开发中的版本,表示该版本尚未达到生产环境稳定发布的要求。常见的预发布标识包括-alpha-beta-rc等。预发布版本号会附加在版本号的后面,格式为X.Y.Z-alphaX.Y.Z-beta等。需要注意的是,正式版本始终大于预发布版本,例如1.2.3大于1.2.3-beta.7
  • -build-meta:构建版本号(也称为构建元数据),用于标识特定的构建版本或构建信息,常用于持续集成和自动化构建工具中。格式为+buildmum,其中 buildnum 通常是自动生成的构建号或时间戳等信息,例如1.2.3+20241209。构建版本号也可以通过.扩展为多个分段,例如1.2.3+20241209.sha.xxxxxx,用于包含更详细的构建信息。此外,构建版本号也可以和预发布版本号一起使用,例如1.2.3-alpha.7+20241209,以同时表示开发版本和构建信息。

长度限制

版本号(包括主版本号、次版本号、修订号、预发布版本号和构建版本号)总长度不应超过 64 个字符。这一限制包括了所有的数字、字母、符号和连接符(如 - 和 +)。

命名规则

代码状态产品阶段版本号命名规则版本号示例
首次发布新产品发布采用X.Y.Z格式,其中 X 为主版本号、Y 为次版本号、Z 为修订号1.0.0
向后兼容的错误修复补丁版本当发布仅修复错误且不影响现有功能时,递增修订号 Z1.0.1
向后兼容的新功能小版本更新当发布新增功能且与旧版本兼容时,递增次版本号 Y,并将修订号 Z 重置为零1.1.0
不兼容的重大更改主要版本更新当发布不兼容的变更时,递增主版本号 X,并将次版本号 Y 和修订号 Z 重置为零2.0.0
预发布版本开发 / 测试阶段X.Y.Z后添加预发布版本号,如-alpha-beta-rc1.0.0-alpha、1.0.0-beta、1.0.0-rc1
构建版本特定构建版本X.Y.Z后添加构建版本号,用+相连,通常是自动生成的构建号或时间戳等信息1.0.0+20241217
文档内容是否对您有所帮助?
有帮助
没帮助