composer clear-cache在中文镜像下只清除本地缓存目录中的files/、repo/、vcs/三个子目录,不触碰vendor/、composer.lock及项目文件;repo/元数据来自镜像服务器,清后需等待镜像同步或切回官方源验证,files/重下载仍走镜像,vcs/不受镜像影响但占空间最大。

composer clear-cache 在中文镜像下到底清什么
它只清本地缓存目录下的 files/、repo/、vcs/ 三个子目录,不碰 vendor/、composer.lock 或任何项目文件——这点在阿里云、腾讯云、华为云等镜像环境下完全不变。镜像源只是改变了下载地址,缓存结构和清理边界没变。
但关键差异在于:repo/ 下的元数据(比如 repo/packagist.org/packages.json)来自镜像服务器,不是官方源;files/ 里存的是从镜像下载的 ZIP 包;vcs/ 则可能包含你用 Git URL 安装包时 clone 的裸仓库(不受镜像影响)。
- 清了
repo/后,下次composer update会重新从镜像拉取元数据,但受镜像 CDN 缓存影响,可能仍是旧快照(TTL 通常 24 小时) - 清了
files/后,重装包会再次走镜像下载,速度不受影响 -
vcs/不走镜像,手动删它不会触发镜像请求,但会强制下次 Git 安装时重新 clone
为什么清完缓存还是装不到新版本
这不是缓存问题,是镜像 + 锁文件双重约束的结果。常见现象:切了阿里云镜像,composer update 还是装旧版,甚至报 404。
-
composer.lock存在 →composer install必然还原旧依赖树,和缓存、镜像都无关 - 镜像源未同步最新 tag → 即使清了
repo/,拉下来的packages.json仍不含新版本(需等镜像更新或临时切回 packagist.org 验证) -
composer config repo.packagist false没生效 → 镜像配置被忽略,实际还在走官方源,清缓存自然无效 - 私有包改了 tag 但没推 commit → Composer 复用本地解压结果,根本不会查远程,这时清
files/才有效
想强制升版,得先 rm composer.lock,再 composer update 或 composer install --no-cache(注意:--no-cache 是跳过本次缓存读写,不是清缓存)。
围绕关键发现、作用机制、临床相关性及研究局限性展开讨论。适用于撰写或优化任何生物医学论文的“讨论(Discussion)”部分——包括结果解读、与既往文献关联、阐释意外发现、界定研究局限性,以及撰写结论。当用户输入以下任一指令时也会自动触发该功能: - “write my discussion” - “help me discuss my findings” - “how do I compare to prior studies” - “write the limitations par
CI/CD 中安全执行缓存清理的最小原子操作
在 GitHub Actions、GitLab CI 等无 TTY 环境中,composer clear-cache 默认会卡住等待确认,必须显式禁用交互。
- 必加
--no-interaction:否则命令 hang 住,构建超时失败 - 建议加
--dry-run预检:确认输出路径是否指向预期位置(比如不是挂载的 NFS 路径) - 权限要对:避免用
sudo执行,否则后续普通用户命令会因缓存目录属主错乱而失败 - 别依赖
post-install-cmd:CI 通常启用--no-scripts,这类钩子根本不会运行
标准写法:composer clear-cache --no-interaction --dry-run → 确认路径无误 → composer clear-cache --no-interaction。
手动清理 vcs/ 目录释放真实空间的实操要点
composer clear-cache 默认不清理 vcs/,但它恰恰是最占空间的部分——单个 Git 裸仓库常达 300–800 MB,尤其在频繁切分支、试装不同 Git 版本包时极易堆积。
- 先确认路径:
composer config --global cache-dir,别直接进~/.composer/cache—— 公司环境可能已通过COMPOSER_CACHE_DIR或全局 config 覆盖 - Linux/macOS 清理:
rm -rf $(composer config --global cache-dir)/vcs/* - Windows 清理:
rd /s /q "%APPDATA%\Composer\Cache\vcs"(注意双引号) - 清之前确保没有
composer install或update进程在后台跑,否则可能触发Corrupted cache file - 清完立刻看效果:
du -sh $(composer config --global cache-dir)(Linux/macOS)或资源管理器“属性”(Windows)
真正容易被忽略的是:vcs/ 清完后首次 Git 安装会变慢,这是正常行为——不是 bug,是设计使然,裸仓库必须重建。










