使用^作为默认保存前缀的好处

时间:2019-02-13 14:17:22

标签: javascript npm

我认为,默认情况下为npm install使用抑扬符(^)并不是很实际。

如果所有软件包都已升级到npm update上的最新版本,而无另行通知,在许多情况下,这可能会导致整个产品的彻底销毁。

我会理解补丁程序版本(〜)的默认更新,因为它们是按定义定义的,是重要的错误/安全修复程序。

那么在npm install package-name上默认不使用抑扬符有什么好处?

2 个答案:

答案 0 :(得分:2)

“次要”更新按定义不应该损害向后兼容性。 我想这就是为什么添加“ ^”前缀通常被看作是一种好处,而您不必担心就可以得到一些修复,次要功能等。

我曾经遇到过这种前缀导致一些问题的情况,但是它们主要与构建后的.lock文件中的冲突有关,等等。

答案 1 :(得分:2)

根据每个服务器的定义,次要版本应包含重大更改。仅主要版本应包含重大更改。

您可以按照以下定义进行操作:

主要-软件包的重新编码
次要-新功能/较大更改-不间断
补丁-错误修正/较小更改-不中断