anjia / blog

博客,积累与沉淀
106 stars 4 forks source link

semver #13

Open anjia opened 5 years ago

anjia commented 5 years ago

语义化版本控制规范

SemVer: Semantic Version, 语义化版本

主版本号.次版本号.修订号

x.y.z-alpha 内测版 x.y.z-beta 公测版 x.y.z-stable 稳定版

初始化开发版本 0.1.0 正式上线了一次,就 1.0.0

主版本号为0时,是为了做快速开发

anjia commented 5 years ago
<
<=
>
>=
=     # 若没有指定operator,则默认是它

1.2.7
>=1.2.7

>=1.2.7 <1.3.0
1.2.7 || >=1.2.9 <2.0.0

1.2.3-alpha.3    # [major, minor, patch]至少有一个匹配

1.2.3 - 2.3.4
1.2.x 1.X 1.2.* *

# ~ 只变最小的版本号。即如果指定了minor,则允许patch改变;如果未指定minor,则允许minor改变
~1.2.3
~1.2
~1

# ^ 大版本号不变就行。左边第一个不为0的数字须一致,其余>=
^1.2.3
^0.2.5
^0.0.4

# eg.
^1.2.3 := >=1.2.3 <2.0.0
^0.2.3 := >=0.2.3 <0.3.0
^0.0.3 := >=0.0.3 <0.0.4

^1.2.3-beta.2 := >=1.2.3-beta.2 <2.0.0
^0.0.3-beta := >=0.0.3-beta <0.0.4

^1.2.x := >=1.2.0 <2.0.0
^0.0.x := >=0.0.0 <0.1.0
^0.0 := >=0.0.0 <0.1.0

及一系列函数,详见:https://github.com/npm/node-semver