package.json中的波浪号(~)和插入符号(^)有什么区别?

升级到最新稳定的节点npm后,我尝试了npm安装时刻--save。它使用插入符号^前缀将条目保存在package.json中。以前,它是一个tilde~前缀

  1. 为什么在npm中进行这些更改
  2. 波浪号~和插入符号^之间有什么区别
  3. 与其他人相比有什么优势

请参阅NPM文档和semver文档:

  • ~version“大约相当于版本”,将更新到所有未来的修补程序版本,而不会增加次要版本~1.2.3将使用从1.2.3到<1.3.0

  • ^version“与版本兼容”,将在不增加主版本的情况下将您更新到将来的所有次要/修补程序版本^2.3.4将使用从2.3.4到<3.0.0

有关例外情况,请参见下面的注释,特别是对于早期版本,如^0.2.3

发表评论