package.json版本号符号^和~前缀的区别
package.json版本号
版本号 x.y.z :
- z :表示一些小的bugfix, 更改z的号,
- y :表示一些大的版本更改,比如一些API的变化
- x :表示一些设计的变动及模块的重构之类的,会升级x版本号
^和~前缀的区别
开发中经常会使用npm install
安装依赖包,经常会看到^符号和~符号,现将二者的区别总结如下:
在package.json
里面dependencies
依赖包的版本号前面的符号有两种,一种是~,一种是^。
~
的意思是匹配最近的小版本 比如~1.0.2
将会匹配所有的1.0.x
版本,但不匹配1.1.0
^
的意思是最近的一个大版本 比如^1.0.2
将会匹配 所有1.x.x
, 但不包括2.x.x
推荐使用~,只会修复版本的bug,比较稳定
使用^ ,有的小版本更新后会引入新的问题导致项目不稳定,