npm ci vs. npm install — 在 Node.js 项目中你需要使用哪个?

栏目: Node.js · 发布时间: 4年前

内容简介:翻译npm 是Node.js 项目默认的包管理器。使用 npm 可以轻松安装和更新依赖项。npmjs 上列出了可以使用的依赖项(例如Vue.js 框架),甚至还显示了可以复制并粘贴到终端的安装命令,如

翻译 medium.com/better-prog…

npm 是Node.js 项目默认的包管理器。

使用 npm 可以轻松安装和更新依赖项。npmjs 上列出了可以使用的依赖项(例如Vue.js 框架),甚至还显示了可以复制并粘贴到终端的安装命令,如 npm i vue

如果你已经使用 npm 一段时间了,那么你将常用 npm install(或更短的 npm i)来安装或更新依赖项。

虽然这个安装命令仍然有效,但是在 npm v6 中还是引入了一个新的命令 - npm ci ,那么它是用来 做什么的 ?与 npm i 又有 什么差异

. . .

npm install (简写: npm i)

npm install ,或者 npm i ,通常是用来安装依赖项:

  • 它将会安装 Node.js 项目所有的依赖项;
  • 如果使用 ^~ 来匹配依赖项的版本时,则 npm 可能无法安装确切版本;
  • 利用 npm install 安装新依赖项时,会更新 package-lock.json。

. . .

npm ci

使用 npm ci ,会发生:

  • 将会删除项目中的 node_modules 文件夹;
  • 会依照项目中的 package.json 来安装确切版本的依赖项;
  • 不像 npm installnpm ci 不会修改你的 package-lock.json 。但是它确实期望你的项目中有一个 package-lock.json 文件 - 如果你没有这个文件, npm ci 将不起作用,此时必须使用 npm install

如果你使用 npm ci ,你将获得 可靠 的构建。特别是当您在 Jenkins 或 GitLab CI 等 持续集成工具 中运行时,这将非常有用。

. . .

npm ci vs. npm Install — 该用哪一个?

如果你使用 npm v6+:

npm ci

如果你使用 npm v5 或者更低的版本:

  • 只能通过 npm install 来安装或者更新依赖项;
  • 尝试升级到最新的 npm 版本。除了 npm ci 之外,它还具有 npm audit 命令,可以更轻松地识别和修复依赖项的安全漏洞。此外,使用 npm v6 安装依赖项应该更快。

. . .

总结

如您所见,这两个命令都有其适用地场景。如果可能的话,我建议使用 npm ci ,因为它可靠地完成它的工作,并使用 npm install 来安装新的依赖项或更新现有的依赖项。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Java语言精粹

Java语言精粹

Jim Waldo / 王江平 / 电子工业出版社 / 2011-6 / 39.00元

这是一本几乎只讲java优点的书。 Jim Waldo先生是原sun微系统公司实验室的杰出工程师,他亲历并参与了java从技术萌生、发展到崛起的整个过程。在这《java语言精粹》里,jim总结了他所认为的java语言及其环境的诸多精良部分,包括:类型系统、异常处理、包机制、垃圾回收、java虚拟机、javadoc、集合、远程方法调用和并发机制。另外,他还从开发者的角度分析了在java技术周围......一起来看看 《Java语言精粹》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

URL 编码/解码
URL 编码/解码

URL 编码/解码