如何阻止 npm 在生产服务器上修改 package-lock.json

Jef*_*eff 3 node.js npm

我已将问题缩小到运行 npm 的操作系统。我目前在 OSx 上。当我npm install在本地机器上运行时,它会创建一个新的锁文件。当我将该锁定文件推送到生产并npm install在生产中运行时,它会修改该package-lock.json文件。

但是,如果我将它安装在我的 Vagrant Ubuntu 机器上并将其推送到生产服务器(Ubuntu),则它package-lock.json保持不变。我怎样才能使它在不同操作系统之间保持一致?

编辑:主机、虚拟机和生产服务器上的 npm 版本为 5.3.0。

的DIFFpackage-lock.json在Mac OSX上时最初运行,那么npm installUbuntu主机上:https://paste.laravel.io/0MGNa

Kzq*_*qai 6

目前,在 2018 年,--no-save 选项将避免修改锁定文件:

npm install --no-save
Run Code Online (Sandbox Code Playgroud)

从 npm v5.7.1 版本开始:

npm ci
Run Code Online (Sandbox Code Playgroud)