composer中文镜像本身不占空间,真正吃磁盘和inodes的是cache/files/(zip包)、cache/vcs/(git裸仓库)和sys_get_temp_dir()临时文件;需用composer config --global cache-dir查真实路径,再用du -sh或资源管理器确认占用,超1.5gb且长期未用才清理。

Composer 中文镜像本身不占空间,真正吃磁盘和 inodes 的是 cache/files/(ZIP 包)、cache/vcs/(Git 裸仓库)和 sys_get_temp_dir() 临时文件——清理“镜像”没用,得精准清这三处。
怎么确认缓存路径和真实占用?
别删错地方。很多人跑 composer clear-cache 后发现空间没变,是因为缓存路径早被 COMPOSER_CACHE_DIR 或公司镜像覆盖了,~/.composer/cache 根本不是 Composer 当前用的目录。
- 查真实路径:
composer config --global cache-dir - Linux/macOS 看大小:
du -sh $(composer config --global cache-dir) - Windows 直接在资源管理器地址栏粘贴
%APPDATA%\Composer\Cache→ 右键“属性” - 不到 200 MB?基本不用管;超 1.5 GB 且半年没碰老项目,才值得动手
为什么 composer clear-cache 清完空间没变化?
最常见原因是你想删的是 vendor/,不是缓存。一个中等 Laravel 项目 vendor/ 常占 300–800 MB,而缓存可能只有 42 MB。
围绕关键发现、作用机制、临床相关性及研究局限性展开讨论。适用于撰写或优化任何生物医学论文的“讨论(Discussion)”部分——包括结果解读、与既往文献关联、阐释意外发现、界定研究局限性,以及撰写结论。当用户输入以下任一指令时也会自动触发该功能: - “write my discussion” - “help me discuss my findings” - “how do I compare to prior studies” - “write the limitations par
-
composer clear-cache默认跳过cache/vcs/—— 这个目录单个 Git 裸仓库就 300–800 MB,还疯狂耗 inode - 它也不清
sys_get_temp_dir()下堆积的composer_*.zip、php*.phar文件,这些更难察觉 - 如果
du -sh显示缓存本身很小,却报No space left on device,立刻df -i查 inode 使用率
如何手动精准清理最占空间的三处?
先停掉所有正在运行的 composer install 或 update 进程,否则可能触发 Corrupted cache file 报错。
-
cache/files/:进该目录,按修改时间删旧包:find ~/.composer/cache/files -type d -mtime +90 -delete(Linux/macOS);Windows 可按日期排序后手动删 90 天前的子目录 -
cache/vcs/:直接全清安全,下次需要自动重建:rm -rf ~/.composer/cache/vcs/*(Linux/macOS)或rd /s /q "%APPDATA%\Composer\Cache\vcs"(Windows) - 临时目录:
php -r "echo sys_get_temp_dir();"查路径,再删:find $(php -r "echo sys_get_temp_dir();") -name "composer_*" -delete 2>/dev/null
长期避免反复爆满的关键设置
换路径比反复清理更治本,尤其当默认缓存落在 C 盘或小容量分区时。
- 禁用 Git 克隆缓存:
composer config --global cache.vcs false,后续所有包强制走--prefer-dist - 重定向临时目录:Linux 启动前加
TMPDIR="/mnt/data/tmp",Windows 可设环境变量TEMP和TMP - 改全局缓存位置:
composer config --global cache-dir "/path/to/big-disk/composer-cache"
真正容易被忽略的是 vcs/ 目录和临时目录——它们不参与 clear-cache 流程,但往往是 No space left on device 的真正源头,尤其是 WSL 或 macOS APFS 下 inode 耗尽时。










