- npm版本指定规则
- 向后兼容与向前兼容
- package.json中版本~与^说明
1.npm版本指定规则
使用npm发布一个包时,往往遵循x.y.z规则,第一个版本一般位0.0.1
- x大版本号:引入新变化,破坏向后兼容
- y小版本号:增加新功能,且不影响已有功能
- z次版本号:修复否个bug,补丁
2. 向后兼容与向前兼容
- 向后兼容:新版本兼容旧版本内容
- 破坏向后兼容:新版本不支持旧版本,旧版本不能更新到新版本
- 向前兼容:旧版本支持新版本中的功能
3.package.json中包版本~与^说明
"dependencies": {
"cookie-parser": "~1.4.4",
"debug": "~2.6.9",
"ejs": "~2.6.1",
"express": "~4.16.1",
"express-session": "^1.16.2",
"formidable": "^1.2.1",
"http-errors": "~1.6.3",
"mongoose": "^5.6.9",
"morgan": "~1.9.1",
"serve-favicon": "^2.5.0",
"svg-captcha": "^1.4.0"
}
假定某个包的版本是1.4.0
- ~1.4.0
- 表示:>=1.4.0&&<1.5.0
- 说明:小版本号不变,补丁号可以取最大值。
- ^1.4.0
- 表示:>=1.4.0?<2.0.0
- 说明:大版本号不变,小版本号可以取最大值。