bower.json 中的 ~ 和 ^ 有啥区别?

Posted

技术标签:

【中文标题】bower.json 中的 ~ 和 ^ 有啥区别?【英文标题】:What is the difference between ~ and ^ in bower.json?bower.json 中的 ~ 和 ^ 有什么区别? 【发布时间】:2016-06-18 07:25:48 【问题描述】:

我有这个 bower.json 文件。


  "name": "angular-seed",
  "description": "A starter project for AngularJS",
  "version": "0.0.0",
  "homepage": "https://github.com/angular/angular-seed",
  "license": "MIT",
  "private": true,
  "dependencies": 
    "angular": "~1.4.0",
    "angular-route": "~1.4.0",
    "angular-loader": "~1.4.0",
    "angular-mocks": "~1.4.0",
    "html5-boilerplate": "~5.2.0",
    "angular-google-chart": "^0.1.0",
    "angular-material": "^1.0.6"
  

对于某些依赖项,我在 "angular-material": "^1.0.6" 中看到了 ^。对于其他人,我看到〜如"html5-boilerplate": "~5.2.0"。 ^ 和 ~ 有什么区别?

【问题讨论】:

***.com/questions/19030170/… 您可以在这里找到答案:***.com/a/31845544/5368495 Node-semver 一个问题。 Bower 和 npm 是否共享相同的 semver? 所有包管理器共享相同的约定。 【参考方案1】:

都是关于semver,实际上来自npm's package.json:

~version 是“大约相当于版本” ^version 是“与版本兼容”

【讨论】:

以上是关于bower.json 中的 ~ 和 ^ 有啥区别?的主要内容,如果未能解决你的问题,请参考以下文章

Grunt,NPM和Bower之间的区别(package.json vs bower.json)

如何使用 bower_components 中已安装的软件包更新 bower.json

如何使用 bower 下载 ember canary 版本

Bower 中的 Visual Studio 2015 还原包啥也不做

bower install 是不是需要在与 bower.json 相同的文件夹中运行?

json bower.json