程序go 2014-03-12 06:02 采纳率: 100%
浏览 428
已采纳

Package.json 中的 tilde (~)和 caret (^)有什么区别?

After I upgraded to latest stable node and npm, I tried npm install moment --save. It saves the entry in the package.json with the caret(^) prefix. Previously, it was a tilde(~) prefix.

  1. Why are these changes made in npm?
  2. What is the difference between tilde(~) and caret(^)?
  3. What is the advantages over others?

转载于:https://stackoverflow.com/questions/22343224/whats-the-difference-between-tilde-and-caret-in-package-json

  • 写回答

14条回答 默认 最新

  • 妄徒之命 2014-03-12 08:28
    关注

    In the simplest terms, the tilde matches the most recent minor version (the middle number). ~1.2.3 will match all 1.2.x versions but will miss 1.3.0.

    The caret, on the other hand, is more relaxed. It will update you to the most recent major version (the first number). ^1.2.3 will match any 1.x.x release including 1.3.0, but will hold off on 2.0.0.

    http://fredkschott.com/post/2014/02/npm-no-longer-defaults-to-tildes/

    Note that the author's terminology is somewhat misleading: when he says "the most recent minor version" for ~ he means "the most recent patch version in the specified minor version". Similarly for ^, "the most recent major version" should be read as "the most recent minor version in the specified major version".

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(13条)

报告相同问题?

悬赏问题

  • ¥20 虚幻UE引擎如何让多个同一个蓝图的NPC执行一样的动画,
  • ¥15 fluent里模拟降膜反应的UDF编写
  • ¥15 MYSQL 多表拼接link
  • ¥15 关于某款2.13寸墨水屏的问题
  • ¥15 obsidian的中文层级自动编号
  • ¥15 同一个网口一个电脑连接有网,另一个电脑连接没网
  • ¥15 神经网络模型一直不能上GPU
  • ¥15 pyqt怎么把滑块和输入框相互绑定,求解决!
  • ¥20 wpf datagrid单元闪烁效果失灵
  • ¥15 券商软件上市公司信息获取问题