官方版本号(2023年5月6日)
Spring Boot
版本说明
Spring Boot的版本号分析:
Spring Boot的版本以数字表示。例如:Spring Boot 2.4.1.RELEASE --> 主版本.次版本.增量版本(Bug修复)
- 主版本,主版本一般情况下是不变的,除非有大机制或者是架构的调整,才会去调整主版本。且主版本之间一般是不相兼容的。
- 次版本,此版本主要是在主版本架构不管的情况下,增加一些新特性。可以理解为发布的新特性。同一个主版本下的次要版本之间通常是要保证兼容的。
- 增量版本,bug修复。
常用的版本号如下:
- Alpha:不建议使用,主要是以实现软件功能为主,通常只在软件开发者内部交流,Bug较多;
- Beta:该版本相对于α版已有了很大的改进,消除了严重的错误,但还是存在着一些缺陷,需要经过多次测试来进一步消除;
- GA:General Availability,正式版本,官方推荐使用此版本,在国外都是用GA来说明release版本;
- M:又叫里程碑版本,表示该版本较之前版本有功能上的重大更新;
- PRE(不建议使用):预览版,内部测试版,主要是给开发人员和测试人员测试和找BUG用的;
- Release:最终版本,Release不会以单词形式出现在软件封面上,取而代之的是符号(R);
- RC:该版本已经相当成熟了,基本上不存在导致错误的BUG,与即将发行的正式版相差无几;
- SNAPSHOT:快照版,可以稳定使用,且仍在继续改进版本。
版本选择
基于以上的版本号的说明和自己多年的开发经验,我们通常会选择GA版本,因为它的稳定性高,同时也是官方所推荐的版本。至于版本号的问题,大家根据自己的业务需求自主选择。最后一个“单词/缩略形式”版本大概有如下,这些定义由开发团队商量来定义,用来描述一个版本的发布状态(发布计划):
稳定性(由小到大):
PRE<SNAPSHOT<RC<GA
其它
软件版本一般分为四个部分组成,
- 第一部分为主版本号,
- 第二部分为次版本号,
- 第三部分为修订版本号,
- 第四部分为日期版本号加希腊字母版本号
- 希腊字母版本号共有五种,分别为base、alpha、beta 、RC 、release(等价RC),部分内容可以简化。
版本修改规则说明
如:2.0.9 RELEASE
- 2:主版本号,当功能模块有较大更新或者整体架构发生变化时,主版本号会更新。
- 0:次版本号。次版本表示只是局部的一些变动。
- 9:修改版本号。一般是bug的修改或者是小的变动。
- RELEASE:希腊字母版本号。此版本号用户标注当前版本的软件处于哪个开发阶段。
- SNAPSHOT: 快照版本,随时可能修改。
版本的阶段说明
- Base:设计阶段。只有相应的设计没有具体的功能实现。
- Alpha:软件的初级版本。基本功能已经实现,但存在较多的bug。
- Bate:相对于Alpha已经有了很大的进步,消除了严重的BUG,但还存在一些潜在的BUG,还需要不断测试。
- RC :该版本已经相当成熟了,基本上不存在导致错误的Bug,与即将发行的正式版本相差无几。
- RELEASE:最终版本,没有太大的问题。
SpringCloud的版本号
- SNAPSHOT: 快照版本,随时可能修改
- BUILD-XXX 开发版 开发团队内部使用,不是很稳定
- GA 稳定版 相比于开发版,基本上可以使用了
- PRE(M1、M2) 里程碑版 主要是修复了一些BUG的版本,一个GA后通常有多个里程碑版
- RC 候选发布版 该阶段的软件类似于最终版的一个发行观察期,基本只修复比较严重的BUG
- SR 正式发布版