npm 包遵循语义化版本控制(semantic versioning)
为了保持Javascript 生态系统的健康、可靠和安全,npm建议使用语义化版本控制规范。语义化版本控制可以使开发者通过一个给定的版本号了解npm包的变化。
版本格式:主版本号.次版本号.修订号
npm 建议初始版本为1.0.0,版本号递增规则如下:
- 修订号(patch):当做了向下兼容的bug修正,1.0.1
- 次版本号(minor):当做了向下兼容的功能性新增1.1.0
- 主版本号(major):当你做了不兼容的 API 修改,2.0.0
通过语义化版本控制指定依赖包的可更新范围:
"dependencies": { "my_dep": "^1.0.0", "another_dep": "~2.2.0" },
- 使用^符号:主版本号相同,包含比一个特定版本大的所有版本,比如^2.2.1
- 使用~符号:主版本号、次版本号相同,包含比一个特定版本大的所有版本,比如~2.2.1
- 使用>,<,=,>=,<=符号,比如>2.0.1
- 使用-符号:制定一个包含范围,比如1.0.0-1.2.0