版本号肯定都不陌生,有时候引入js为了清除缓存也会随意更改版本号。发布npm或者说发布各种需要修改版本号的时候,没有几个人按照规范去修改。
一般版本分为三个,X.Y.Z,分别为:
- X:主版本号,不兼容的API修改
- Y:次版本号,向下兼容,新增功能
- Z:修订号,问题修正
稍微知道一下就很容易按照规范去修改版本号了,整个大调整就修改X,就像vue3和vue2,新增功能的话就改Y,平时发现bug修复bug就修改Z。
而package.json里面在版本前面会有一些符号,个人感觉其他场景也可以使用:
无:固定版本,比如1.1.1那就是固定1.1.1版本
=:必须大于或者等于某个版本,比如>=1.1.1那就是一定要大于等于1.1.1的版本
:必须大于某个版本,比如>1.1.1,那就一定要比1.1.1版本大
<:必须小于某个版本,比如<1.1.1,那就一定要比1.1.1版本小的版本
<=:必须小于等于某个版本,比如<=1.1.1,那就一定要小于或者等于1.1.1的版本
:主版本号和次版本号固定,修订号随意更改的版本,比如1.1.1,一定要是1.1.x的版本
:次版本号和修订号随意修改的版本,比如1.1.1,那一定要是1.x.x的版本
:最新的版本,比如1.1.1,那么每次都是安装最新的版本
-:此范围内的版本,比如1.1.1-1.2.1,那么版本一定要这个范围内,包含1.1.1和1.2.1
||:固定某几个版本之间,比如1.1.1||1.2.1,那么只能是1.1.1或者1.2.1
其实搞懂了版本号三个所表达的含义,再记住~、^、*这三个,其他的都直接语义化记忆了。
欢迎关注个人订阅号 coding个人笔记