NPM酷库,每天两分钟,了解一个流行NPM库。
软件的命运就是不断维护、更新、迭代,所以我们用版本号来区分一个软件的不同时期和形态,版本号的命名方式有各种各样,有的以小数表示(几点几),有的以日期表示,有的以代码提交Hash表示等等。
今天在此向大家推荐一种非常流行的版本号命名规则:语义化版本。
所有NPM包都是用语义化版本号管理的,其格式如下
主版本号.次版本号.修订号
比如,2.1.12,代表主版本号为2,次版本号是1,修订版本号是12。语义化版本约定:
修订版本号代表在和之前接口不变的前提下修正了BUG。
次版本号变化说明产品增加了新特性,接口可能已经发生了变化。
主版本号变化代表产品已经发生了很大的改变,与之前版本不兼容
semver
在项目中,我们也许会在某些情况下对版本号进行检查、比较等操作。比如一个典型案例,在服务端判断APP客户端是否需要升级。
semver 就是专门用于语义化版本号检查的库,其也是语义化版本标准的制定者。
https://github.com/npm/node-semver
https://semver.org/lang/zh-CN/
领取专属 10元无门槛券
私享最新 技术干货