进行 npm 审计修复时不修改 package.json
Posted
技术标签:
【中文标题】进行 npm 审计修复时不修改 package.json【英文标题】:Not modify package.json when doing npm audit fix 【发布时间】:2019-01-25 01:55:21 【问题描述】:我已经更新了我的 npm 版本,我认为 npm audit
是一个新功能。当我运行 npm audit fix
时,我的一些包版本从 package.json 更改。我只是想让包裹和我的同事一样
【问题讨论】:
【参考方案1】:要回答最初的问题,如果您真的想在安装时完全跳过审核(无论出于何种原因,在我的情况下,我想在安装时解决异常),您可以使用--no-audit
标志:
npm install --no-audit
【讨论】:
【参考方案2】:npm 审计修复不是让您的应用启动和运行所必需的。当我想确保没有潜在的安全漏洞时,我会使用此命令,以便 git hub 不会有任何对象针对我的项目。如果您仍想在不更改其余文件的情况下使用审核修复,请尝试此命令
在不修改 node_modules 的情况下运行审计修复,但仍更新 pkglock:
$ npm audit fix --package-lock-only
跳过更新 devDependencies:
$ npm audit fix --only=prod
进行试运行以了解审计修复的作用,并以 JSON 格式输出安装信息:
$ npm audit fix --dry-run --json
查看此链接以供将来参考: https://docs.npmjs.com/cli/audit
【讨论】:
不幸的是,npm audit fix --package-lock-only
在某些情况下会更改 package.json
。例如:您引用了react-script
版本3.2.0
,那么即使带有--package-lock-only
标志,它也会将此包更新到3.3.0 或更高版本。以上是关于进行 npm 审计修复时不修改 package.json的主要内容,如果未能解决你的问题,请参考以下文章