Composer提示磁盘空间不足_清理Composer历史版本缓存文件【技巧】-composer

先执行 composer clear-cache 安全清理无效缓存,再手动进入 ~/.composer/cache/files/ 按包名保留最新版、删除旧版;还可配置 cache-max-size 或禁用 cache-dist 预防膨胀。

Composer install 报错 disk space is insufficient 怎么办

不是磁盘真满了,而是 Composer 缓存了大量历史包的 zip 和 dist 文件,尤其在频繁切换版本、使用 composer update 或镜像源不稳定时,缓存会指数级膨胀。默认缓存路径在 ~/.composer/cache/(Linux/macOS)或 %APPDATA%\Composer\Cache\(Windows),单个包的多个版本可能共存,占几 GB 很常见。

  • 先确认缓存大小:du -sh ~/.composer/cache(Linux/macOS)或用资源管理器查看 Windows 缓存目录
  • 别直接删整个 cache 文件夹——这会让下次 composer install 重新下载所有包,耗时且加重网络压力
  • 优先执行 composer clear-cache,它会安全清理无效、损坏、过期的缓存项,保留仍被本地项目引用的可用包

如何只删旧版本、留最新版缓存?

Composer 自身不提供“按版本号保留最新”的清理命令,但可借助缓存结构手动精简。它的 cache/files/ 下以包名哈希 + 版本号命名目录,每个目录含 .dist(zip/tar 包)和 .source(git clone)两类缓存。

  • 进缓存根目录:cd ~/.composer/cache/files
  • 按包名分组并保留最新版(需 bash/zsh):
    for d in */; do ls -t "$d" | tail -n +2 | xargs -I{} rm -rf "$d{}"; done
  • 该命令对每个包目录按修改时间倒序列出文件,跳过第一个(最新版),删掉其余——前提是同一包的不同版本确实按时间顺序缓存(Composer 通常如此)
  • 注意:此操作不可逆,建议先备份 files/ 目录或至少 ls -l 看一眼再执行

composer clear-cache 为什么有时不释放空间?

因为 clear-cache 主要清理 cache/repo/(JSON 元数据)和损坏的 cache/files/ 条目,但不会主动删除“有效但陈旧”的包缓存。如果你长期没运行过该命令,repo/ 可能积压大量过期的 packages.json,而 files/ 里全是“合法”缓存,clear-cache 就视而不见。

夏夕资源网专注于CMS网站模板,主流语言整站网站源码下载,网站建设相关教程分享,好用的软件素材整合下载,提供一站式便捷自助服务。
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 如遇到加密压缩包,默认解压密码为"zy.lucklyus.top",如遇到无法解压的请联系管理员!
夏夕资源网-网站模板_免费源码_资源素材 » Composer提示磁盘空间不足_清理Composer历史版本缓存文件【技巧】-composer
在线时间:12:00 - 22:00
关注微信公众号:微信公众号
站长邮箱:[email protected]
  • 运营天数: 1393+
  • 资源总数: 47989+
  • 用户总数: 1+
  • 今日更新: 0+
  • 访问次数: 4016054+
  • 本周更新: 0+
  • 最后更新: 2026-03-16

本站指数

×
  • 运营天数: 1393+
  • 资源总数: 47989+
  • 用户总数: 1+
  • 今日更新: 0+
  • 访问次数: 4016054+
  • 本周更新: 0+
  • 最后更新: 2026-03-16