npm install和之间有什么实际区别npm update?我什么时候应该使用哪个?
xan*_*iel 619
在package.json中指定的软件包版本的npm install和npm update处理之间的区别:
{
"name": "my-project",
"version": "1.0", // install update
"dependencies": { // ------------------
"already-installed-versionless-module": "*", // ignores "1.0" -> "1.1"
"already-installed-semver-module": "^1.4.3" // ignores "1.4.3" -> "1.5.2"
"already-installed-versioned-module": "3.4.1" // ignores ignores
"not-yet-installed-versionless-module": "*", // installs installs
"not-yet-installed-semver-module": "^4.2.1" // installs installs
"not-yet-installed-versioned-module": "2.7.8" // installs installs
}
}
Run Code Online (Sandbox Code Playgroud)
总结:唯一的区别是已安装的模块具有模糊版本 ...
npm installnpm update另外:install和update默认手柄devDependencies不同
npm install除非添加了标志,否则将安装/更新 devDependencies--productionnpm update除非添加了标志,否则将忽略 devDependencies--dev为什么要使用npm install?
因为npm install除了处理依赖关系外,还有更多内容package.json.正如你在npm安装中看到的,你可以......
PATH)npm install -g <name>--forcesae*_*eed 75
npm install安装package.json文件中列出的所有模块及其依赖项.
npm update更新node_modules目录中的所有包及其依赖项.
npm install express只安装express模块及其依赖项.
npm update express updates express模块(从npm@2.x开始,它不会更新其依赖项).
因此,更新适用于已有模块并希望获得新版本的更新.
jma*_*mav 46
在大多数情况下,这将安装在npm上发布的最新版本的模块.
npm install express --save
Run Code Online (Sandbox Code Playgroud)
或者更好地将模块升级到最新版本使用:
npm install express@latest --save --force
Run Code Online (Sandbox Code Playgroud)
--save:包将出现在您的依赖项中.
更多信息:npm-install
已经提到了许多区别.还有一个:
运行npm install在源代码目录的顶部将运行各种脚本:prepublish,preinstall,install,postinstall.根据这些脚本的作用,a npm install可能比安装依赖项做更多的工作.
我刚刚有一个用例prepublish可以调用,make并且Makefile设计用于获取依赖关系,如果package.json已更新.npm install从内部调用Makefile会导致无限递归,而调用npm update工作正常,安装所有依赖项,以便即使make直接调用构建也可以继续.
| 归档时间: |
|
| 查看次数: |
195144 次 |
| 最近记录: |