版本号规范

版本号组成和范例

<主版本号>.<次版本号>.<修订号>-<先行版本号>+<版本编译信息>

# 主版本号+次版本号+修订号 范例:
0.1.0
1.0.0
1.0.9
1.10.0

# 主版本号+次版本号+修订号+先行版本号 范例:
1.0.0-alpha
1.0.0-alpha.1
1.0.0-0.3.7
1.0.0-x.7.z.92

# 主版本号+次版本号+修订号+先行版本号+版本编译信息 范例:
1.0.0-alpha+001
1.0.0+20130313144700
1.0.0-beta+exp.sha.5114f85

版本号中希腊字母标识

Alpha 版: 也叫 α 版,此版本主要是以实现软件功能为主,通常只在软件开发者内部交流,一般而言,该版本软件的 Bug 较多,需要继续修改。

Beta 版: 此版本相对于 α 版已经有了很大的改进,消除了严重的错误,但还是存在着一些缺陷,需要经过多次测试来进一步消除,此版本主要的修改对香是软件的 UI。

RC 版: (Release Candidate)发布候选版本,此版本已经相当成熟了,基本上不存在导致错误的 BUG,与即将发行的正式版相差无几,测试人员基本通过的版本。

Release 版: 此版本意味着最终版本、上线版本,在前面版本的一系列测试版之后,终归会有一个正式版本,是最终交付用户使用的一个版本。该版本有时也称为标准版。一般情况下,Release 不会以单词形式出现在软件封面上,取而代之的是符号 (R)。

版本号修改规则

主版本号: 当功能模块有较大的变动,比如增加多个模块或者整体架构发生变化。此版本号由项目决定是否修改。

次版本号: 当功能有一定的增加或变化,比如增加了对权限控制、增加自定义视图等功能。此版本号由项目决定是否修改。

修订号: 一般是 Bug 修复或是一些小的变动,要经常发布修订版,时间间隔不限,修复一个严重的bug即可发布一个修订版。此版本号由项目经理决定是否修改。

先行版本号: 被标上先行版本号则表示这个版本并非稳定而且可能无法达到兼容的需求。

版本编译信息: 可以记录修改项目的当前日期或编译信息,每天对项目的修改都需要更改日期版本号。版本编译信息不标识版本优先级,因此当两个版本只有在版本编译信息有差别时,属于相同的优先层级。

参考 & 扩展