软件版本命名规则

1,536 阅读4分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第4天,点击查看活动详情

前言

作为一名程序开发者,对于自己开发软件的版本名称,或许觉得只是一个很简单的事情:将程序编译打包部署。但实际发布时,可能常出现版本发布错误的问题。因此,作为一名程序开发者,对软件发布版本命名应该要有一定的了解。

软件版本通用命名规则

序号格式要求说明
X非负整数表示主版本号(Mjor),当APl的兼容性变化时,X需递增
Y非负整数表示次版本号(Minor),当增加功能时(不影响APl的兼容性),Y需递增
Z非负整数表示修订号(Patch),当做Bug修复时(不影响API的兼容性),Z需递增

规则说明:

X,Y,Z必须为非负整数,且不得包含前导零,必须按数值递增

0.Y.Z的版本号表明软件处于初始开发阶段,意味着AP1可能不稳定;1.0.0表明版本已有稳定的API

当API的兼容性变化时,X必须递增,Y和Z同时设置为0

当新增功能,不影响API的兼容性或者APl被标记为Deprecated时,Y必须递增,同时Z设置为0

当进行Bug修复时,Z必须递增

先行版本号(Pre-release)意味版本不稳定,可能存在兼容性问题,其格式为:X.Y.Z.[a-c][正整数],如1.0.0.a1

软件版本修饰词

描述说明概述
Snapshot快照版尚不不稳定、尚处于开发中的版本
Alpha内部版严重缺陷基本完成修正并通过复测,但需要完整的功能测试
Beta测试版相对Alpha有很大的改进,消除了严重的错误,但还是存在一些缺陷
RC终测版Release Candidate(最终测试),即将作为正式版发布
Demo演示版只集成了正式版部分功能升级,无法升级
SPSP1是service pack的意思表示升级包,可以在windows中看到
Release稳定版功能相对稳定,可以对外发行,但有时间限制
Trial试用版试用版,仅对部分用户发行
Full Version完整版即正式版,已发布
Unregistered未注册有功能或时间限制的版本
Standard标准版能满足正常使用的功能的版本
Lite精简版只含有正式版的核心功能
Enhance增强版正式版,功能优化的版本
Ultimate旗舰版在标配版本升级体验感更好的版本
Professiona专业版针对更高要求功能,专业性更强的使用群体发行的版本
Free自由版自由免费使用的版本
Upgrade升级版有功能增强或修复已知bug
Retail零售版单独发售
Cardware共享版公用许可证(IOS签证)
LTS维护版该版本需要长期维护

Spring版本命令

描述方式说明含义
Snapshot快照版尚不不稳定、尚处于开发中的版本
Release稳定版功能相对稳定,可以对外发行,但有时间限制
GA正式版代表广泛可用的稳定版(General Availability)
M里程碑版(M是Milestone的意思)具有一些全新的功能或是具有里程碑意义的版本。
RC终测版Release Candidate(最终测试),即将作为正式版发布。

Spring Boot版本命令

SpringBoot的版本号是通过数字来命名的,以版本:1.2.3.RELEASE说明

1: 表示主版本号,表示是我们的SpringBoot第二代产品,当功能模块有较大更新或者整体架构发生变化时,主版本号会更新。

2: 表示次版本号,增加一些新的功能但是主体的架构是没有变化的,是兼容的,只是局部的一些变动。

3: 表示一般bug的修改或者是小的变动

RELEASE:希腊字母版本号。标注当前版本的软件处于哪个开发阶段

1.2.3.RELEASE描述:Spring Boot的第1代版本的第2个小版本的第3次bug修复的稳定版本

Spring Cloud版本命令

Spring Cloud通过希腊英文字母的方式,在发布的版本时是以伦敦地铁站作为版本命名,并按地铁站名称的首字母A-Z依次命名。

Spring CloudSpring Boot
Hoxton2.2.x
Greenwich2.1.x
Finchley2.0.x
Edgware1.5.x
Dalston1.5.x
Camden1.4.x
Brixton1.3.x
Angle1.2.x