唯一可靠方式是通过环境变量composer_cache_dir临时覆盖缓存目录,它优先级最高、不写入配置、适用于ci/docker等场景;--cache-dir命令行选项根本不存在。

缓存路径改不掉?先确认当前生效的是哪个目录
直接运行 composer config --global cache-dir 看输出,但别全信它——这个值可能被环境变量覆盖。更可靠的做法是执行 composer diag,找 “Cache directory:” 那一行,它显示的才是 Composer 实际写入的位置。Windows 用户注意:%APPDATA%\Composer\Cache 默认指向 C:\Users\用户名\AppData\Roaming\Composer\Cache,这正是 C 盘爆满的常见元凶。
临时换路径最稳:用 COMPOSER_CACHE_DIR 环境变量
别试 --cache-dir,这个参数根本不存在,一用就报 Unknown option cache-dir。唯一可靠、不改配置、不污染全局的方式是设环境变量:
-
export COMPOSER_CACHE_DIR="/data/composer-cache"(Linux/macOS) -
set COMPOSER_CACHE_DIR=D:\composer-cache(Windows CMD) - 必须是**绝对路径**,且提前
mkdir -p或手动创建目录,确保当前用户有读写权限 - 设完立刻生效,
composer install就会往新路径写;终端关闭后自动失效,不影响其他命令
验证是否真生效?再跑一次 composer diag,看 Cache directory 行是否已变。如果没变,大概率是路径不存在或权限不对——Composer 会静默 fallback 到默认位置,连警告都不给。
删旧缓存前,先查它到底占了多少空间
盲目清缓存可能白忙一场。先定位真实路径,再看体积:
围绕关键发现、作用机制、临床相关性及研究局限性展开讨论。适用于撰写或优化任何生物医学论文的“讨论(Discussion)”部分——包括结果解读、与既往文献关联、阐释意外发现、界定研究局限性,以及撰写结论。当用户输入以下任一指令时也会自动触发该功能: - “write my discussion” - “help me discuss my findings” - “how do I compare to prior studies” - “write the limitations par
- Linux/macOS:
du -sh $(composer config --global cache-dir) - Windows:打开资源管理器,粘贴
%APPDATA%\Composer\Cache,右键 → 属性
如果不到 200MB,C 盘告警大概率跟它无关;超过 1.5GB 且你半年没碰某些老项目,才值得动手。执行 composer clear-cache 前,务必确认:没用 sudo 混过权限(否则普通用户删不动)、杀毒软件或 PHPStorm 没锁着 files/ 下的 ZIP、Docker 构建时没用 root 写过缓存——这些都会导致 clear-cache 看似成功,实际什么都没删。
重装 vendor 时别跳步:删干净 + 重 install 才真干净
C 盘满常伴随 vendor 目录异常(比如 autoload 失败、类找不到),此时只清缓存不够,得连 vendor 一起重来:
- 先删
rm -rf vendor(Linux/macOS)或rmdir /s vendor(Windows CMD),确保没残留隐藏文件 - 再跑
composer install,不是update——前者严格按composer.lock还原,后者可能升级版本、引入新包、扩大磁盘占用 - 若要跳过脚本或开发依赖,加参数:如
composer install --no-scripts --no-dev
最容易被忽略的是:删 vendor 后 composer install 报错,往往不是操作问题,而是 composer.lock 里记录的包版本和当前 PHP 环境/扩展不兼容。这时候该检查的是 PHP 版本和 extension= 配置,不是反复删缓存。










