如果一个应用程序有一个package-lock.json或shripkwrap.json,两个npm install/npm ci命令都将荣誉依赖项版本(在package-lock.json或shripkwrap.json中),那么波浪号(~)和插入符号(^)在package.json中的作用是什么?
j0pj023g1#
~
^
但是正如您所发现的,当存在 package-lock.json 文件时,npm install会忽略新的补丁或次要版本。而是运行npm update。这将根据您在 package.json 中定义的版本安装所有依赖项的最新版本。它还相应地更新 package-lock.json。
npm install
npm update
1条答案
按热度按时间j0pj023g1#
~
和插入号^
,表示您的软件与特定依赖项的新补丁或次要版本兼容。但是正如您所发现的,当存在 package-lock.json 文件时,
npm install
会忽略新的补丁或次要版本。而是运行
npm update
。这将根据您在 package.json 中定义的版本安装所有依赖项的最新版本。它还相应地更新 package-lock.json。