我npm-shrinkwrap
用来锁定我的项目依赖项。
但是我遇到了一个问题。似乎如果您从npm-shrinkwrap.json
then 节点中删除一个依赖项,就会通过package.json
. 我通过删除 my 中的一个条目来测试这一点,npm-shrinkwrap.json
并注意到它node_modules
在npm install
.
我在这里担心的是有人在不知不觉中使用npm intall --save-dev
向项目添加新依赖项但忘记更新npm-shrinkwrap.json
. 然后,您可能会在项目中引入变量依赖项,这些依赖项可能会从开发人员更改为开发人员或 CI 服务器,这似乎是npm shrinkwrap
旨在防止的。
我的问题是我在这个断言中是否正确,或者以某种方式误解了这种行为,或者如果正确,我可以做些什么来强制只npm install
使用依赖项并忽略. 我突然想到我可以通过在生成后删除依赖项来解决这个问题,但显然这并不理想。npm-shrinkwrap.json
package.json
package.json
npm-shrinkwrap.json