misonoteApp Center

Yarn 缓存占用太大,能删吗?Mac 上的位置和清理

可以放心删会自动重新生成;Thermo 直接删除。

位置

  • ~/Library/Caches/Yarn
  • ~/.yarn/berry/cache

这是什么

Yarn 1(Classic)会把下载和解压过的包放在 Library/Caches/Yarn;Yarn 2 及以上版本(Berry)则把包以 zip 形式存进 ~/.yarn/berry/cache 这个全局缓存。两者都是为了让重复安装不必重新下载。

为什么会这么大

Yarn 1 的缓存里每个包都是解压后的完整目录,文件数量很多;Berry 虽然存的是 zip,但同一个包的每个版本都会保留。两者都不会自动清理旧版本。

能删吗?删了会怎样

安全。删除后再次安装时会从网络重新获取。需要注意的是,使用 Plug'n'Play 并启用全局缓存的 Berry 项目是直接从这些 zip 里读取依赖的,清理后要在项目里重新运行一次 yarn install 才能正常运行。

小提示

开启了 zero-install 的项目会把依赖放在仓库自己的 .yarn/cache 里,那部分不在这一项中。

先看看占了多少

du -sh "$HOME/Library/Caches/Yarn" "$HOME/.yarn/berry/cache" 2>/dev/null

用它自带的命令清理

yarn cache clean

手动删除

在「终端」里执行。删除不可撤销,执行前请确认路径。

rm -rf "$HOME/Library/Caches/Yarn"/*
rm -rf "$HOME/.yarn/berry/cache"/*