Nodejs的新手,并查看package.json文件的dependencies部分。有人可以向我解释设置版本时~
和*
符号的作用吗?
答案 0 :(得分:6)
支持以下范围样式:
1.2.3
特定版本。什么都没做。请注意,仍然会忽略构建元数据,因此1.2.3+build2012
将满足此范围。>1.2.3
大于特定版本。<1.2.3
少于特定版本。如果版本范围上没有预发布标记,则也不允许使用预发布版本,即使这些版本在技术上&#34;小于&#34;。>=1.2.3
大于或等于。请注意,预发行版本不等于他们的&#34;正常&#34;等价物,因此1.2.3-beta
不会满足此范围,但2.3.0-beta
会。<=1.2.3
小于或等于。在这种情况下,允许使用预发布版本,因此1.2.3-beta
将满足。1.2.3 - 2.3.4
:= >=1.2.3
<=2.3.4
~1.2.3
:= >=1.2.3-0 <1.3.0-0
&#34;合理地接近1.2.3&#34;。使用代字号运算符时,也支持预发布版本,但是下一个有效数字的预发布将不会令人满意,因此1.3.0-beta
将不满足~1.2.3
。~1.2
:= >=1.2.0-0 <1.3.0-0
&#34;任何以1.2&#34开头的版本; 1.2.x
:= >=1.2.0-0 <1.3.0-0
&#34;任何以1.2&#34开头的版本; ~1
:= >=1.0.0-0 <2.0.0-0
&#34;任何以1&#34开头的版本; 1.x
:= >=1.0.0-0 <2.0.0-0
&#34;任何以1&#34开头的版本;
范围可以与空格(暗示&#34;和&#34;)或||
(暗示&#34;或&#34;)结合。附录:
*
表示任何版本。