持续创作,加速成长!这是我参与「掘金日新计划 · 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 | 演示版 | 只集成了正式版部分功能升级,无法升级 |
| SP | SP1 | 是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 Cloud | Spring Boot |
|---|---|
| Hoxton | 2.2.x |
| Greenwich | 2.1.x |
| Finchley | 2.0.x |
| Edgware | 1.5.x |
| Dalston | 1.5.x |
| Camden | 1.4.x |
| Brixton | 1.3.x |
| Angle | 1.2.x |