版本格式:主版本号.次版本号.修订版本号,版本号递增规则如下

  • 主版本号:当你做了不兼容的 API 修改,

  • 次版本号:当你做了向下兼容的功能性新增,

  • 修订版本号:当你做了向下兼容的问题修正。

  • 先行版本号版本编译信息可以加到“主版本号.次版本号.修订号”的后面,作为延伸。

具体要求

  1. 必须包含公共API,定义在代码或文档中。

  2. 格式必须是 X.Y.Z。 非负,从0开始。

  3. 每次代码修改必须调整版本号。

  4. 主版本号为0时(0.Y.Z) 为开发阶段,可随意修整代码。

  5. 1.0.0 是公共API的起始版本号。

  6. 修订版本号为修复BUG递增版本号,向后兼容。

  7. 新增功能后次版本号增长。必须保证向后兼容。修订版本号归零。

  8. 新增不能向后兼容的功能后,主版本号增长,次版本号修订版本号归零。

  9. 先行版本号,即已发布非正式的版本号标注。必须从1.0.0开始。 在版本号后以-a.a...的形式追加。 a 可为字母单词数字横杠(-), 不可为空。范例:1.0.0-alpha、1.0.0-alpha.1、1.0.0-0.3.7、1.0.0-x.7.z.92。

  10. 版本编译信息追加。在先行版本号以+b.b...的形式追加。 b可为字母单词数字横杠(-), 不可为空。范例:1.0.0-alpha+001、1.0.0+20130313144700、1.0.0-beta+exp.sha.5114f85。

  11. 版本优先级。 从左到右依次比较。先行版本号版本编译信息的比较中以.切割比较,有编号高于无编号,字母编号高于编号数字。范例:1.0.0-alpha < 1.0.0-alpha.1 < 1.0.0-alpha.beta < 1.0.0-beta < 1.0.0-beta.2 < 1.0.0-beta.11 < 1.0.0-rc.1 < 1.0.0。

基于官方文档2.0.0版本翻译解释

文档地址: http://semver.org/