版本号的正确打开方式

SemVer

根据国际主流的惯例,我们使用「语义化版本(Semantic Versioning)」的命名方式,有时简称 SemVer。

语义化版本号(以下简称「版本号」)的格式是:<major>.<minor>.<patch>。即使用三位非负整数,以点号 . 连接。

如:1.4.156.2.0

每一位版本号的含义

  1. <major> 即主版本号,俗称大版本升级。改动到主版本号时,标志着 API 发生了巨大变化,包括但不限于新增特性、修改机制、删除功能, 一般不兼容上一个主版本号
  2. <minor> 即次版本号,俗称小版本升级。当我们进行常规的新增或修改功能时,改动次版本号,但是 必须是向前兼容的。这也意味着我们 不能直接删除某个功能。如若必要,我们可以在 changelog 中标记某项功能为「即将删除(Deprecated)」,然后在下一个大版本中将其彻底删除。
  3. <patch> 即修订号,俗称 bug 修复。顾名思义,如果仅仅为了修复或调整一些小问题,我们就只改动修订号。

 

转自:http://taobaofed.org/blog/2016/08/05/instructions-of-semver/

 

(1)^指定版本:比如"^3.1.4",表示安装3.1.4及以上的版本(3.x.x),但是不安装4.0.0 

(2)~指定版本:比如 "~1.1.0", 表示安装1.1.0及以上的版本(1.1.x),但是不安装1.2.x

 

ps:值得注意的是package-lock.json会把实际版本锁住,它会跟package.json保持一致,如果发现不一致npm才会去根据package.json来重新下载依赖包。

就是如果我们有使用自己写的依赖包,如果发了新包,我们想更新项目引用的版本,只能手动修改一下package.json的版本配置,不然不会更新依赖

posted @ 2019-07-24 15:37  张啊咩  阅读(406)  评论(0编辑  收藏  举报