npm-ci
这是一个 npm 命令, 可以用来完全保持 packjson-lock的版本来install依赖.
前提
确保你拥有 packjson-lock.json 和 最新的 npm 安装(up-to-date install)
特点
这个命令类似于 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
或任何包锁:安装基本上是冻结的。