package.json

package.json

http://javascript.ruanyifeng.com/nodejs/packagejson.htmljavascript

版本號

好比下面的packagecss

{
  "dependencies": {
    "babel-core": "^5.8.25",
    "babel-loader": "^5.3.2",
    "browserslist": "^1.0.1",
    "bundle-loader": "^0.5.4",
    "css-loader": "~0.16.0",
    "file-loader": "~0.8.4",
    "jquery": "~2.1.4",
    "jsx-loader": "~0.13.2",
    "num2fraction": "^1.2.2",
    "react": "~0.13.3",
    "react-hot-loader": "^1.2.8",
    "react-router": "^0.13.3",
    "style-loader": "~0.12.3",
    "url-loader": "~0.5.6",
    "webpack": "~1.11.0",
    "webpack-dev-server": "^1.10.1"
  },
  "devDependencies": {
    "webpack": "^1.11.0"
  }
}
  • 指定版本:好比1.2.2,遵循「大版本.次要版本.小版本」的格式規定,安裝時只安裝指定版本。
  • 波浪號~(tilde)+指定版本:好比~1.2.2,表示安裝1.2.x的最新版本(不低於1.2.2),可是不安裝1.3.x,也就是說安裝時不改變大版本號和次要版本號。
  • 插入號^(caret)+指定版本:
    好比ˆ1.2.2,表示安裝1.x.x的最新版本(不低於1.2.2),可是不安裝2.x.x,也就是說安裝時不改變大版本號。
  • latest:安裝最新版本

須要注意的是,若是大版本號爲0,則插入號的行爲與波浪號相同,這是由於此時處於開發階段,即便是次要版本號變更,也可能帶來程序的不兼容。html

參考
http://stackoverflow.com/questions/22343224/difference-between-tilde-and-caret-in-package-jsonjava

version desc
~version "Approximately equivalent to version" See npm semver - Tilde Ranges & semver (7)
^version "Compatible with version" See npm semver - Caret Ranges & semver (7)
version Must match version exactly
>version Must be greater than version
>=version etc
<version etc
* Matches any version
相關文章
相關標籤/搜索