clear-cache只清~/.composer/cache或%appdata%\composer\cache下的repo/、files/、vcs/、http/四类缓存,不碰vendor/、composer.lock、composer.json、镜像配置及php opcache。

clear-cache到底清什么,又不碰哪些文件
它只删~/.composer/cache(Linux/macOS)或%APPDATA%\Composer\Cache(Windows)下的四类内容:repo/(元数据快照)、files/(已下载的.zip/.tar包)、vcs/(Git裸仓库)、http/(HTTP响应缓存)。不会动vendor/、composer.lock、composer.json,也不会重置镜像配置或删PHP OPcache。
为什么执行后磁盘空间没变化
最常见原因是你真正想清的是vendor/目录——它通常占300–800 MB,而缓存可能才42 MB。另一个原因是vcs/目录默认不被clear-cache清理,单个Git裸仓库就能吃掉300–800 MB。
围绕关键发现、作用机制、临床相关性及研究局限性展开讨论。适用于撰写或优化任何生物医学论文的“讨论(Discussion)”部分——包括结果解读、与既往文献关联、阐释意外发现、界定研究局限性,以及撰写结论。当用户输入以下任一指令时也会自动触发该功能: - “write my discussion” - “help me discuss my findings” - “how do I compare to prior studies” - “write the limitations par
- 先确认真实缓存路径:
composer config --global cache-dir - 再看实际大小:Linux/macOS用
du -sh $(composer config --global cache-dir);Windows直接右键该路径“属性” - 不到200 MB基本不用管;超1.5 GB且半年没碰老项目,才值得动手
CI/CD里执行clear-cache卡住怎么办
GitHub Actions、GitLab CI等非交互环境会默认等待确认,导致构建hang住。
- 必须加
--no-interaction:运行composer clear-cache --no-interaction - 建议先加
--dry-run预检:输出将清理的路径,确认是否指向预期位置(比如NFS挂载点而非本地磁盘) - 如果仍卡住,可能是后台有composer进程锁着目录:Linux/macOS用
lsof +D $(composer config --global cache-dir)查,Windows需用handle.exe -p php.exe
清完还是装不到新版本?别怪clear-cache失效
composer.lock文件存在时,composer install永远按锁文件还原旧依赖树——和缓存是否干净无关。这是设计行为,不是命令失效。
- 想拉新版:先删
composer.lock,再跑composer install或composer update - 刚切了阿里云/腾讯云镜像,却仍走
repo.packagist.org?说明repo/子目录里的元数据签名不匹配,此时clear-cache才真正起作用 - 私有包改了tag但没推新commit?Composer复用本地解压结果,根本不会查远程,这时清
files/或vcs/才有效
clear-cache只清composer config --global cache-dir指向的那个路径,不会遍历所有可能位置。










