composer clear-cache 默认删除 ~/.composer/cache(linux/macos)或 %appdata%\composer\cache(windows)下的 files/、repo/、vcs/ 子目录,不触碰 vendor/、composer.json、composer.lock 或全局配置;如仅需清理下载包,应手动删除 files/ 目录内容。

composer clear-cache 会删掉哪些文件
composer clear-cache 默认清空整个缓存目录,包括 repo/(元数据)、files/(下载的 .zip/.tar 包)、vcs/(Git 克隆缓存)等子目录。它**不碰** vendor/、composer.json、composer.lock 或全局配置 —— 所以“只清下载包”这个需求,本质是**跳过 repo/ 和 vcs/,只动 files/**。
手动删 files/ 是最直接的方式
Composer 没有内置参数支持“只清下载包”,但路径结构稳定,可安全手动操作:
- 先确认缓存根目录:
composer config --global cache-dir - Linux/macOS 下执行:
rm -rf $(composer config --global cache-dir)/files/* - Windows 下进
%APPDATA%\Composer\Cache\files\,全选删除 - 删前确保没有
composer install或update进程在运行,否则可能触发Corrupted cache file
这个操作释放的空间通常最大 —— files/ 存的是原始压缩包,一个大前端包(如 laravel/ui)就能占 50MB+,而 repo/ 一般只有几 MB。
为什么不用 --no-cache 或改配置代替?
有人想绕开缓存机制本身,但要注意:
围绕关键发现、作用机制、临床相关性及研究局限性展开讨论。适用于撰写或优化任何生物医学论文的“讨论(Discussion)”部分——包括结果解读、与既往文献关联、阐释意外发现、界定研究局限性,以及撰写结论。当用户输入以下任一指令时也会自动触发该功能: - “write my discussion” - “help me discuss my findings” - “how do I compare to prior studies” - “write the limitations par
-
composer install --no-cache只是本次跳过读缓存,**不会清理已有文件** - 设
COMPOSER_CACHE_DIR=/dev/null会导致命令失败或写入异常路径,不可靠 - 改
cache-dir到新位置后,旧files/仍留在原处,没解决“清理”问题
真要长期省空间,不如定期手动清 files/,比折腾环境变量更可控。
清完发现磁盘没变小?先查 vendor/
常见误判:以为缓存占大头,其实 vendor/ 才是主力。一个中等 Laravel 项目,vendor/ 常超 300MB,而 files/ 缓存往往不到 50MB。
验证方式:
- Linux/macOS:
du -sh vendor/和du -sh $(composer config --global cache-dir)/files对比 - Windows:右键看两个文件夹属性里的大小
如果 files/ 确实很小,却急着腾空间,重点该转向 vendor/ 的精简策略(比如 composer install --no-dev --prefer-dist),而不是反复清理缓存。










