下载被人的项目,npm i之后,package-lock.json和package.json会被改变,所以了解到了npm ci这个命令;
用途
此命令类似于npm-install
,但它旨在用于自动化环境,如测试平台,持续集成和部署。通过跳过某些面向用户的功能,它可以比常规的 npm 安装快得多。它也比常规安装更严格,它可以帮助捕获由大多数 npm 用户的增量安装的本地环境引起的错误或不一致。
区别
使用npm install
和使用的主要区别npm ci
是:
- 该项目必须有一个
package-lock.json
或npm-shrinkwrap.json
。 - 如果程序包锁中的依赖项与其中的依赖项不匹配
package.json
,npm ci
则将退出并显示错误,而不是更新程序包锁。 npm ci
只能一次安装整个项目:使用此命令无法添加单个依赖项。- 如果a
node_modules
已经存在,它将在npm ci
开始安装之前自动删除。 - 它永远不会写入
package.json
或任何包锁:安装基本上是冻结的。