npm-cache

操作包缓存

选择 CLI 版本

概要

npm cache add <package-spec>
npm cache clean [<key>]
npm cache ls [<name>@<version>]
npm cache verify

注意:此命令不了解工作区。

描述

用于添加、列出或清理 npm 缓存文件夹。

  • add:将指定的包添加到本地缓存。此命令主要用于 npm 的内部使用,但它可以提供一种显式将数据添加到本地安装缓存的方法。

  • clean:删除缓存文件夹中的所有数据。请注意,这通常是不必要的,因为 npm 的缓存是自修复的,并且可以抵御数据损坏问题。

  • verify:验证缓存文件夹的内容,垃圾回收任何不需要的数据,并验证缓存索引和所有缓存数据的完整性。

详情

npm 将缓存数据存储在配置的 cache 中的隐藏目录中,名为 _cacache。此目录是基于 cacache 的内容寻址缓存,它存储所有 http 请求数据以及其他与包相关的数据。此目录主要通过 pacote 访问,该库负责从 npm@5 开始的所有包获取。

通过缓存传递的所有数据在插入和提取时都将完全验证其完整性。缓存损坏将触发错误,或向 pacote 发出信号,指示必须重新获取数据,它将自动执行此操作。出于这个原因,除了回收磁盘空间外,不应出于任何其他原因清除缓存,因此 clean 现在需要 --force 才能运行。

目前,npm 没有公开的方法来检查或直接管理此缓存的内容。为了访问它,必须直接使用 cacache

npm 不会自行删除数据:缓存会随着新包的安装而增长。

关于缓存设计的说明

npm 缓存严格来说是一个缓存:它不应被视为包数据的持久且可靠的数据存储。npm 不保证以前缓存的数据将在以后可用,并且会自动删除损坏的内容。缓存提供的首要保证是,如果它确实返回数据,则该数据将与插入的数据完全一致。

要运行对现有缓存内容的脱机验证,请使用 npm cache verify

配置

缓存

  • 默认:Windows:%LocalAppData%\npm-cache,Posix:~/.npm
  • 类型:路径

npm 缓存目录的位置。

另请参阅