版本号格式
major.minor.patch _希腊字母
主版本号.次版本号.修补版本号 _版本阶段说明
- major:新的架构调整,不兼容老版本
- minor:新增功能,兼容老版本
- patch:修复bug,兼容老版本
- 希腊字母:base、alpha、beta、rc、release
- base:此版本表示该软件仅仅是一个假页面链接,通常包括所有的功能和页面布局,但是 页面中的功能都没有做完整的实现,只是做为整体网站的一个基础架构。
- alpha:软件的初级版本,表示该软件在此阶段以实现软件功能为主,通常只在软件开发者 内部交流,一般而言,该版本软件的Bug较多,需要继续修改,是测试版本。测试 人员提交Bug经开发人员修改确认之后,发布到测试网址让测试人员测试,此时可 将软件版本标注为alpha版。
- beta:该版本相对于Alpha 版已经有了很大的进步,消除了严重错误,但还需要经过多次 测试来进一步消除,此版本主要的修改对象是软件的UI。修改的的Bug 经测试人 员测试确认后可发布到外网上,此时可将软件版本标注为 beta版。
- rc:该版本已经相当成熟了,基本上不存在导致错误的Bug,与即将发行的正式版本相差无几。
- release:该版本意味“最终版本”,在前面版本的一系列测试版之后,终归会有一个正式的版本,是最终交付用户使用的一个版本。该版本有时也称标准版。
package.json中依赖版本匹配规则
~version
不改变主版本号和次要版本号,不低于声明的修补版本号
^version
不改变主版本号,不低于声明的次版本号修补版本号,如果大版本号为0,则
^的行为与~相同
version
必须匹配某个版本
>version
必须大于某个版本
>=version
可大于或等于某个版本
<version
必须小于某个版本
<=version
可以小于或等于某个版本
x-range
x的位置表示任意版本
version1 - version2
大于等于version1,小于等于version2
range1 || range2
满足range1或者满足range2,可以多个范围
latest
安装最新发布的版本
注意事项
- 版本号前不要加 v。
- 不要在数字前补 0。错误:chestnut::01.12.03。
- 每一位版本号按照 +1 的速度递增,不要在版本号之间跳跃。
- 主版本号停留在 0 的版本号,即 0.x.x 应当视作还在内部开发阶段的代码。如果代码有公共 API,此时不宜对外公开。
- 1.0.0 的版本号用于界定公共 API 的形成。
- 当次版本号递增时,修订号归零;当主版本号递增时,次版本号、修订号归零。
- 进行新的开发时,版本号从 0.1.0 开始。
- 如果不小心把一个不兼容的改版当成了次版本号发行,应当发行一个新的次版本号来更正这个问题并且恢复向下兼容。注意 不能去修改已发行的版本。
参考来源: 软件的版本号组成及其意义、 论「版本号」的正确使用方式