2

我知道只要主要版本仍然是 2,使用 ^2.x 和 ^2.1.2 都会更新次要版本和补丁,但是如果我使用插入符号,我应该指定次要版本和/或补丁版本吗?

https://bytearcher.com/articles/semver-explained-why-theres-a-caret-in-my-package-json/中的一条评论说:

你实际上并不想要2. . ,因为这允许新版本和旧版本。^2.1.2 表示“2.1.2 或更新版本”。

但是如果我知道 ^2.1.2 已经发布了,那么使用 ^2.x 本质上不会等同于 ^2.1.2,那么包含次要版本和补丁版本是否有目的?

4

1 回答 1

0

使用此工具来测试您的假设:https ://semver.npmjs.com/

根据这个工具,包含次要版本和/或补丁版本是有道理的经过一些试验后,插入符号似乎会锁定次要版本,但它不会拉入比您提供的版本更旧的任何内容。

例如:^2可以拉入版本2.2^2.3不会。

于 2018-10-11T01:01:33.997 回答