繁体   English   中英

`npm install`和`npm audit`之间的区别是什么?

[英]Difference between `npm install` and `npm audit` counts?

最近加入后npm audit (审计依赖)我注意到之间的包裹数量巨大的差异added (安装在node_modules ),多少audited通过npm 这是一个例子:

npm安装输出

这是我的问题:

  • 我是否更正, 281是安装的软件包总数?
  • 为什么npm审核的包比我项目中的包多得多?

对我来说,如果发现漏洞, npm可能不得不退出并audit其他软件包版本,但是在这种情况下,它found 0 vulnerabilities ,为什么要进行额外的工作呢?

更新:

我认为顶级vs子依赖关系有点混乱。 运行以下命令以重现类似的差异:

mkdir test-npm-count-discrepancy
cd test-npm-count-discrepancy
npm init
npm i standard-version

请注意(在撰写本文时) added 200+依赖项(即standard-version及其所有子依赖项),但audited 1000+包。 只是为了重新迭代,上面的主要问题是“为什么npm审计的包比实际安装的更多?”。

对于第一个问题: - 社区,没有链接到依赖列表或package.json之类的东西,实际上不能这么说。 但是,如果在您的包文件中只有少数几个,那么大部分时间它仍然是正常的。 您可能已经自己安装了12个,但是NPM会为您的应用程序的依赖项自动安装大多数(如果不是全部)依赖项。 它可以帮助您加快工作流程。

对于第二个问题: - 正如我对第一个问题的回答中所提到的,它是审核您安装的和自动安装的那些,以便您安装的那些正常工作。

对于第三个问题: - 它总是检查由开发人员标记的漏洞,以便您可以拥有最新版本,大多数情况下,最少的错误,最实用,最安全。

编辑: npm install是更新当前依赖项并在目录中安装新的依赖项。 npm audit的要点是检查是否有标记为更新安全问题的更新的依赖项。

编辑2:我认为我已经得到了它:它可能是审计生产的依赖关系,你的依赖关系和dev依赖关系,以警告你,你的一个依赖项是由开发人员不安全地构建的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM