语义化版本号
- 主版本号,向下不兼容api更改
- 次版本号,向下兼容功能新增
- 修订版本号,向下兼容问题修正
- 先行版本号,当要发行大版本或核心功能时,但不能保证这个版本完全正常,就要先发一个先行版本。常见的先行版本号有:
- alpha - 不稳定版本
- beta - 基本稳定
- rc - 和正式版基本相同
版本发行,应该先发先行版本,再发正式版本。
Dependency版本号规则
1. 指定版本号
1.0.2
只能使用1.0.2
版本
2. ^版本号
主版本号相同,且不小于指定版本号之间的版本
^1.0.2
可使用大于等于1.0.2
,小于2.0.0
的版本^1.0.2-beta.1
可使用大于等于1.0.2-beta.2
,小于2.0.0
的版本,也可使用1.0.2-beta.2
等先行版本,但不可使用主 次 修订版本号不同的其他先行版本,如不可用1.0.3-beta.1
^0.0.1
主版本号为0,可使用大于等于0.0.1
,小于0.0.2
的版本
3. ~版本号
主版本号和次版本号都相同,且不小于指定版本号的所有版本
~1.0.2
可使用大于等于1.0.2
,小于1.1.0
的版本
4. > < = >= <= 版本号
指定版本号范围
>=3.0.0
,可使用 3.0.0 以上版本
5. - 版本号
- 两边必须有空格
1.0.1 - 2.1.2
可使用大于等于1.0.1
,小于等于2.1.2
的版本
6. 空格版本号 || 版本号
空格表示AND
, || 表示OR
1.2.7 || >=1.2.9 <2.0.0
可使用1.2.7
或者大于等于1.2.9
,小于2.0.0
的版本
6. * 版本号
所有版本
7. x X版本号
1.x
可使用主版本号为1的版本1.1.x
可使用主版本号为1,次版本号为1的版本
latest等标记版本
发布的通用标记版本,常用标记有stable
, beta
, dev
, canary