【问题标题】:npm install with ^ dependency instead of exact matchnpm install 使用 ^ 依赖而不是完全匹配
【发布时间】:2018-05-30 14:12:14
【问题描述】:

我正在开发一个 npm 包,并意识到它在添加时添加到 package.json 的确切版本

npm i -S packagename

如何告诉它使用 ^0.0.1 而不是 0.0.1 ? 我可以在包本身中将其定义为默认值吗?

【问题讨论】:

    标签: npm dependencies semantic-versioning


    【解决方案1】:

    这是因为^0.0.1 被认为等同于0.0.1

    当一个包的版本以 0 开头时,它被认为是在开发中,并且语义版本控制规则是不同的。当版本为0.0.X 时,任何一个数字的增加都可能会发生重大变化。可以看到规则here

    插入符号范围 ^1.2.3 ^0.2.5 ^0.0.4

    允许不修改[major, minor, patch] 元组中最左边的非零数字的更改。换句话说,这允许对1.0.0 及更高版本进行补丁和次要更新,对0.X >=0.1.0 版本进行补丁更新,对于0.0.X 版本不允许更新。

    当您增加次要版本时,您可能会看到插入符号,但它也会有上面提到的特殊规则。当您增加主要版本时,“普通”规则开始应用。

    【讨论】:

      猜你喜欢
      • 2020-05-06
      • 2015-02-25
      • 2017-11-24
      • 1970-01-01
      • 2022-06-15
      • 2017-12-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多