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

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

内容简介:翻译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 来安装新的依赖项或更新现有的依赖项。


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

查看所有标签

猜你喜欢:

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

Flow-Based Programming (2nd Edition)

Flow-Based Programming (2nd Edition)

CreateSpace / 2010-5-14 / $69.95

Written by a pioneer in the field, this is a thorough guide to the cost- and time-saving advantages of Flow-Based Programming. It explains the theoretical underpinnings and application of this program......一起来看看 《Flow-Based Programming (2nd Edition)》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具