Composer无“渲染缓存”,仅管理files/(ZIP/TAR包)、vcs/(Git副本)、repo/(元数据)三类缓存;清理前须用composer config --global cache-dir查路径、du -sh或资源管理器查大小,不足200MB无需处理,超1.5GB才值得清理。

Composer 本身没有“渲染缓存”这个概念,所谓“渲染缓存”是误传或混淆——它不生成 HTML、不编译模板、不缓存视图输出。你真正想清理的,只有三类东西:files/(下载的 ZIP/TAR 包)、vcs/(Git 克隆副本)、repo/(元数据快照)。其他任何叫“渲染”“模板”“编译结果”的缓存,都不属于 Composer 管理范围。
怎么确认缓存真占空间?别清错地方
很多人执行 composer clear-cache 后发现磁盘没少多少,是因为根本没查清楚缓存实际在哪、有多大。
- 先看路径:
composer config --global cache-dir,输出就是 Composer 当前认的根目录(Linux/macOS 默认~/.composer/cache,Windows 是%APPDATA%\Composer\Cache) - 再看体积:Linux/macOS 运行
du -sh $(composer config --global cache-dir);Windows 直接把路径粘进资源管理器地址栏,右键 → “属性” - 不到 200MB?基本不用动;超过 1.5GB 且你半年没碰某些老项目,才值得动手
- 有些团队把缓存挂到 NFS 或自建镜像目录,
clear-cache只清cache-dir指向的那个路径,不会遍历其他位置
为什么 composer clear-cache 有时没反应或报错
常见现象是提示 Cache directory does not exist,或反复运行后大小不变。问题通常不在命令本身:
围绕关键发现、作用机制、临床相关性及研究局限性展开讨论。适用于撰写或优化任何生物医学论文的“讨论(Discussion)”部分——包括结果解读、与既往文献关联、阐释意外发现、界定研究局限性,以及撰写结论。当用户输入以下任一指令时也会自动触发该功能: - “write my discussion” - “help me discuss my findings” - “how do I compare to prior studies” - “write the limitations par
- 权限错乱:之前用
sudo composer install写过缓存,现在普通用户跑clear-cache就会被拒绝删除 - 环境变量干扰:设置了
COMPOSER_CACHE_DIR但未生效,clear-cache实际清的是空路径 - 文件被占用:杀毒软件或 PHPStorm 正在扫描
~/.composer/cache/files/下的 ZIP,系统锁住不让删 - CI/CD 用户混用:Docker 构建时用 root 跑过 composer,后续非 root 用户执行
clear-cache就会失败
手动删 files/ 里的旧 ZIP 包最省空间
composer clear-cache 是全量操作,但多数人只想甩掉积压的旧版 dist 包(比如 monolog/monolog 的 1.x 系列 ZIP),又不想让下次 composer update 卡在拉 packages.json 上。
- 删 90 天前的 ZIP:
find ~/.composer/cache/files -name "*.zip" -mtime +90 -delete - 删所有 ZIP(保留目录结构):
rm -rf ~/.composer/cache/files/* - 别动
repo/packagist.org/:这是核心元数据快照,删了会导致首次composer update明显变慢 - 可放心清
vcs/:rm -rf ~/.composer/cache/vcs/*,下次需要时自动重建 - 手删前务必确认没有
composer install或update进程在后台跑,否则可能触发Corrupted cache file报错
真正容易被忽略的是:私有仓库配置(比如 repositories 在 composer.json 或全局 config 里)会让清完缓存后的首次请求变慢——不是 bug,是设计使然,元数据必须重新 fetch。

















