版本号

语义化版本号规则定义了版本号的格式与更新规范,包括主版本号、次版本号和修订号等元素,适用于软件项目的版本管理和发布。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

语义化版本号规则



简介

格式如:X.Y.Z[-先行版本号][+版本编译元数据] ,其中 X, Y, Z 均为非负整数(自然数 0 ~ 无穷大),且禁止在数字前方补0。

  • X 主版本号
  • Y 次版本号
  • Z 修订号

规范

版本更新

  1. 每一项都必须以数值增加
  2. 任何对某一个版本的修改都必须发布到新的版本,禁止在制定好的版本内修改。
  3. 主版本号为0的,属于不稳定版本,各种事务都有可能变更。

版本归零

  1. 每当次版本号更新,修订号必须归零。
  2. 主版本号更新,次版本号和修订号都要归零。

先行版本号

指的是这个版本非稳定而且可能无法满足预期的兼容性需求。在修订号后先加上一个连接号再加上一连串以句点分隔的标识符来修饰。标识符类型只能是字母、数字,且不可以有空格。先行版的优先级低于相关联的标准版本。如: 1.0.0-alpha1.0.0-alpha.1

版本编译元数据

在有先行版本号则在先行版本号后,无先行版本号之后则在修订号后。先加上一个+,再加上以句号分隔的标识符。标识符类型只能是字母、数字,且不可以有空格。版本编译元数据可被忽略,以前面的为主指定优先级。如:1.0.0-alpha+0011.0.0-beta+exp.sha.5114f85

版本优先级

  1. 主版本号、次版本号及修订号以数值比较,例如:1.0.0 < 2.0.0 < 2.1.0 < 2.1.1
  2. 当主版本号、次版本号及修订号都相同时,使用先行版本号决定,带现行版本号的优先级都低于正式版本。例如:1.0.0-alpha < 1.0.0

有用的提示信息(FAQ)

  1. 主版本号为0时,怎么定义版本号?

    0.1.0 作为你的初始化开发版本,并在后续的每次发行时递增 次版本号

  2. 如何判断发布 1.0.0 版本的时机?

    软件被用于正式环境,它应该已经达到了 1.0.0 版。如果你已经有个稳定的 API 被使用者依赖,也会是 1.0.0 版。

参考链接

[1] semver. github
[2] Gravatars 创办者兼 GitHub 共同创办者 Tom Preston-Werner 语义化版本2.0.0

感谢

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值