包的版本控制
//语义化版本格式
[major, minor, patch]
1.严格匹配
//必须严格匹配版本号1.2.3
1.2.3
2.通配符匹配
//等同于>=0.0.0
*
//等同于>=1.0.0 <2.0.0
1.x
//等同于>=1.2.0 <1.3.0
1.2.x
3.局部匹配
//等同于 *
"" (空字符串)
//等同于1.x.x,等同于>=1.0.0 <2.0.0
1
//等同于1.2.x,等同于>=1.2.0 <1.3.0
1.2
4.算术匹配
//必须大于版本号,不可以等于版本号
>1.0.2
//比如可以匹配 1.2.7, 1.2.8, 1.3.9,2.5.3,不可以匹配 1.1.0 或 1.2.6
>=1.2.7
//必须小于版本号,不可以等于版本号
<1.3.0
//必须小于等于版本号
<=1.3.0
5.区间匹配
//等同于>=1.2.0 <=2.3.4
1.2 - 2.3.4
//等同于>=1.2.3 <=2.3.4
1.2.3 - 2.3.4
//等同于>=1.2.3 <3.0.0
1.2.3 - 2
//等同于>=1.2.3 <2.4.0
1.2.3 - 2.3
6.或匹配
//比如可以匹配 1.2.7, 1.2.9, 1.4.6,不可以匹配 1.2.8 或 2.0.0
1.2.7 || >=1.2.9 <2.0.0
7.~
匹配
如果在版本号上指定了 minor
,则允许 patch
级别的更改。如果没有 minor
,则允许 minor
级别的更改。
//等同于>=1.0.0 <2.0.0
~1
//等同于>=1.2.0 <1.3.0
~1.2
//等同于>=1.2.3 <1.3.0
~1.2.3
8.^
匹配
^
符号的意义就是版本号允许更改但是不可以更改最左边的非零数字。
//等同于>=0.0.3 <0.0.4
^0.0.3
//等同于>=0.2.3 <0.3.0
^0.2.3
//等同于>=1.2.3 <2.0.0
^1.2.3
原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/javascript/javascriptenv/3678.html