node.js - Npm update package JSON - package.json中的tilde(~)和caret(^)有什么区别?

Package JSON latest / node.js / npm / package.json / semantic-versioning

升级到最新的稳定 nodenpm 后,我尝试了 npm install moment --save 。它将条目保存在 package.json 中,并带有尖号 ^ 前缀。以前,它是一个波浪号 ~ 前缀。

Nikita Fedyashev



Answer #1

主要版本已修复,次要版本已修复,可匹配任何版本号。

"express": "~4.13.3" 

~4.13.3 意味着它会检查4.13.x其中x是什么,4.14.0

主要版本已修复,匹配任何次要版本,匹配任何构建号。

"supertest": "^3.0.0"