摘要:在本教程中,您将了解语义化版本控制,以指定包的版本或安装外部包的指定版本。
npm 中的语义化版本控制介绍
为了使 JavaScript 生态系统更加可靠和安全,您应该更新package.json文件中的版本号,该文件遵循语义化版本控制规范
major.minor.patchCode language: JavaScript (javascript)例如
4.17.1Code language: JavaScript (javascript)在此版本中
major版本为 4。minor版本为 17。patch版本为 1。
对于指定版本,您应该递增
- 当您进行与先前版本不兼容的更改时,请递增
major版本。 - 当您添加与先前版本向后兼容的功能时,请递增
minor版本。 - 当您进行与先前版本向后兼容的错误修复时,请递增
path版本。
如果您开发一个新包,起始版本应为1.0.0。
当您进行一个或多个与版本1.0.0向后兼容的错误修复时,您会增加第三位数字1.0.1。
当您引入新的向后兼容功能时,您会增加中间数字并将第三位数字重置为零,例如1.1.0
但是,当您进行与先前版本不兼容的更改时,您会增加第一位数字并将中间和最后一位数字重置为零,例如2.0.0
npm 语义化版本控制
以下解释如何计算语义化版本控制。
1) 插入符号 (a.k.a 帽子) 符号 ^
要包含在相同major范围内的特定版本之后的所有版本,请使用插入符号 (^)
^1.10.1
Code language: JavaScript (javascript)2) 波浪号符号 ~
要包含在相同minor范围内的特定版本之后的所有版本,请使用波浪号符号 (~)
~1.5.12
Code language: JavaScript (javascript)3) 比较运算符
要指定稳定版本的范围,请使用以下比较运算符之一:>、<、=、>=、<=
>1.5Code language: JavaScript (javascript)或者可以使用连字符 (-) 来指定范围
1.0.0 - 1.5.0
Code language: JavaScript (javascript)请注意,连字符两侧都有空格。
4) 预发布版本
要包含预发布版本(例如 alpha 和 beta),请使用预发布标签
1.0.0-alpha.1
Code language: JavaScript (javascript)要指定预发布版本的范围,请使用比较运算符(如>)和预发布标签
>=1.0.0-alpha.0 <1.0.5
Code language: JavaScript (javascript)5) 包含多个版本的集合
要包含多个版本的集合,请使用 || 来组合。 例如
<1.2.0 || > 1.2.3Code language: JavaScript (javascript)6) 使用 x 符号
使用x符号指定任何版本。 例如,1.x匹配所有具有1的major版本的版本,如1.0.0、1.1.2、1.10.20等。
安装具有特定版本的包
要安装包,请使用npm install命令
npm install <package_name>Code language: JavaScript (javascript)要安装指定版本的包,请使用@符号
npm install <package_name>@versionCode language: JavaScript (javascript)以下示例安装具有版本4.x的express包
npm install express@4.xCode language: JavaScript (javascript)它将安装具有最高版本4.x(例如4.17.1)的express包
总结
- npm 使用语义化版本控制规范,格式为
major.minor.patch。
本教程对您有帮助吗?