# package 依赖项版本号说明

# 版本的格式

major.minor.patch
// 主版本.次版本.修订版本
// major: 新的调整不向后兼容
// minor: 新增功能,向后兼容
// patch: 修复bug,向后兼容
1
2
3
4
5

# 具体含义

  • version

必须匹配某个版本,如 1.0.0 表示必须依赖 1.0.0

  • >version

必须大于某个版本,如 >1.0.0 表示必须大于 1.0.0

  • >=version

必须大于或等于某个版本,如 >=1.0.0 表示可以等于 1.0.0 也可以大于 1.0.0

  • <version

必须小于某个版本,如 >1.0.0 表示必须小于 1.0.0

  • <=version

必须小于或等于某个版本,如 <=1.0.0 表示可以等于 1.0.0 也可以小于 1.0.0

  • ~version

大概匹配某个版本,如果 minor 版本号指定了,那么 minor 版本号不变,patch 版本号任意, 如果 minorpatch 版本号未指定,那么 minorpatch 版本号任意。

~1.1.1 表示 >=1.1.1 <1.2.0,可以是 1.1.11.1.2,...,1.1.n

~1.1 表示 >=1.1.0 <1.2.0, 可以是 1.1.01.1.1,...,1.1.n

~1 表示 >=1.0.0 <2.0.0, 可以是 1.0.01.0.1,...,1.n.n

  • ^version

兼容某个版本,版本号最左边的非0数字的右侧可以随意,如果缺少某个版本号,则这个版本号位置可以任意。

^1.1.1 表示 >=1.1.1 <2.0.0,可以是 1.1.11.1.2,...,1.n.n

^0.1.1 表示 >=0.1.1 <0.2.0, 可以是 0.1.10.1.2,...,0.1.n

^1.0 表示 >=1.0.0 <1.1.0, 可以是 1.0.01.0.1,...,1.0.n

^1 表示 >=1.0.0 <2.0.0

  • x-range

x 的位置表示任意版本

1.0.x 表示可以是 1.0.01.0.1,...,1.0.n

  • *-range

任意版本,等同于空字符串

* === "" 表示 >=0.0.0

  • version1 - version2

表示 version1version2 任意版

1.0.1 - 1.3.3 表示包含 >=1.0.1 <=1.3.3

  • range1 || range2

满足 range1range2,可以多个范围

1.2.7 || >=1.2.9 <2.0.0 表示满足版本是 1.2.7 或者 大于等于 1.2.9 小于 2.0.0 的版本