composer clear-cache 清除 Composer 本地缓存(files/repo/vcs),但不碰项目目录、vendor、composer.json、系统配置、CI共享缓存、镜像CDN及插件临时文件。
composer
clear-cache 到底清什么,哪些东西它动不了
直接说结论:
会清掉 Composer 自己维护的全部本地缓存,包括
(下载的 zip/tar 包)、
(包元数据快照)、
(Git 克隆的裸仓库),但不会碰你的项目目录、
、
或系统级配置。
常见误解是“清了缓存就能装上新版本”——其实不是。如果你改了
却没删
和
,Composer 仍会按旧锁文件复用缓存里的老包,这时清缓存根本没用。
它不清理 CI 环境中挂载的共享缓存卷(比如 GitHub Actions 的
)
它不刷新镜像源服务器上的 CDN 缓存(比如阿里云镜像的响应可能被代理层缓存了)
它不处理某些插件(如
)绕过标准逻辑产生的临时文件
什么时候必须清,什么时候清了也白清
遇到这些情况,
是第一反应,大概率有效:
或
,但网络正常
明明发布了 v2.3.0,
却只给到 v2.2.1
报错含
、
、
但下面这些场景,清缓存只是浪费时间:
刚执行过
,但
没提交,换机器拉代码后装不上——问题在锁文件没同步,不是缓存
用了私有 Packagist 镜像,但镜像本身没同步上游更新——清本地没用,得查镜像状态
CI 构建失败,错误是
—— 可能是缓存损坏,但也可能是构建机 DNS 或 TLS 证书异常
手动删缓存:什么能删,什么别碰
如果
报错或卡住,或者你想精准控制(比如只清老 zip 节省磁盘),就得手动进目录操作。先查路径:
。
缓存目录结构分三层,安全操作建议如下:
Composer 2.9.6
Composer 2.9.6 是 PHP 生态中高效、稳定的依赖管理工具。此版本在性能与兼容性上进一步优化,改进了依赖解析算法,提升大型项目中的安装与更新速度。它支持并行下载任务,显著减少等待时间,并增强了与私有仓库及镜像源的交互稳定性。同时修复了多项命令行交互与内存使用相关的缺陷,确保在复杂依赖关系下依然可靠运行。无论是新项目初始化还是现有系统维护,Composer 2.9.6 都能为开发者提供流畅、精准的依赖管理体验。
下载
:存所有下载过的 zip 包,冗余最多。可用
清 90 天前的
:存 Git 克隆的裸仓库,切分支/换源频繁时容易积攒废弃目录。直接
安全,下次需要时自动重建
:这是核心索引缓存,删了会导致首次
明显变慢,不建议动
Windows 用户路径通常是
,macOS/Linux 是
。
CI/CD 和 Docker 里要不要清缓存
不该无脑清。CI 环境靠复用
加速安装,
会让每次构建都重新下载,拖慢流水线。
更合理的做法是:
在脚本开头加
,把缓存指向临时路径,容器销毁即清理
或直接用
,跳过缓存读写(适合极简构建)
只有确认缓存损坏(比如报 checksum 错误且重试多次失败)才针对性
缓存不是垃圾,是 Composer 的性能杠杆;乱清不如看清它在哪、被谁用、坏了怎么换。
composer clear-cache~/.composer/cache/files/cache/repo/cache/vcs/vendorcomposer.jsoncomposer.jsoncomposer.lockvendoractions/cachehirak/prestissimocomposer clear-cacheCould not parse versionFailed to download packagecomposer require vendor/pkgcorrupted .zip filechecksum mismatchinvalid package archivecomposer updatecomposer.lockfile could not be downloaded: failed to open streamcomposer clear-cachecomposer config cache-dircache/files/find ~/.composer/cache/files -name "*.zip" -mtime +90 -deletecache/vcs/rm -rf ~/.composer/cache/vcs/*cache/repo/packagist.org/composer update%APPDATA%\Composer\cache~/.composer/cache~/.composer/cachecomposer clear-cachecomposer config -g cache-dir /tmp/composer-cachecomposer install --no-cacherm -rf ~/.composer/cache