执行 composer clear-cache 是解决镜像配置错误的前提,必须先清除 ~/.composer/cache/repo/ 和 files/ 中的旧缓存,再正确配置 repo.packagist 为 composer 类型、https 且以 / 结尾的 url,并验证 -vvv 日志中下载域名是否生效。

执行 composer clear-cache 清除污染缓存
镜像配置错误后,即使改对了 repo.packagist,composer install 仍可能卡在 404 或 checksum mismatch,根本原因是 ~/.composer/cache/repo/ 里还存着旧源的 packages.json 快照,或 ~/.composer/cache/files/ 中有中断下载的损坏 ZIP。这些缓存不会随配置更新自动失效。
-
composer clear-cache必须先跑——它清掉所有元数据快照和压缩包,是重置镜像行为的前提 - 验证是否清干净:
ls -la ~/.composer/cache/repo/应为空或只剩空目录 - 若只删
vendor/或只跑composer update,90% 会继续失败,因为校验仍基于旧composer.lock和缓存元数据
用 composer config -g repo.packagist 覆盖全局配置
别用 --unset,也别手写 ~/.composer/config.json。Composer 2.x 对字段名极其敏感,repos.packagist(多一个 s)、repository、mirror 都无效且静默忽略。唯一可靠写法是:
围绕关键发现、作用机制、临床相关性及研究局限性展开讨论。适用于撰写或优化任何生物医学论文的“讨论(Discussion)”部分——包括结果解读、与既往文献关联、阐释意外发现、界定研究局限性,以及撰写结论。当用户输入以下任一指令时也会自动触发该功能: - “write my discussion” - “help me discuss my findings” - “how do I compare to prior studies” - “write the limitations par
- 命令必须带
-g:否则只改当前目录,换项目就失效 - 键名固定为
repo.packagist(单数、小写、无 s) - 中间必须显式写
composer:这是type值,漏掉就 fallback 到官方源 - URL 必须是 HTTPS 且以
/结尾:https://mirrors.aliyun.com/composer/✅,https://mirrors.aliyun.com/composer❌(拼成/composerpackages.json导致 404)
验证是否真生效,只看 composer install -vvv 日志
别信 composer config -g repo.packagist 的输出,它可能返回 JSON 但实际未被加载;也别信下载变快——镜像只加速下载,不解决 Resolving dependencies 卡顿。唯一铁证是日志里的真实请求域名:
- 运行
composer install -vvv 2>&1 | grep "Downloading" - 第一行应出现类似
Downloading https://mirrors.aliyun.com/composer/packages.json - 如果看到
packagist.org或github.com,说明被项目级repositories字段覆盖,或缓存没清干净 - Windows 用户改完需重启终端,否则环境变量未刷新,
composer config -g可能查不到新值
项目级配置冲突时,优先改 composer.json
全局配置在 CI、宝塔、多用户环境极易失效(比如你用 root 配了,但宝塔后台用 www 用户执行命令)。更稳的做法是进项目根目录,运行:
-
composer config repo.packagist composer https://mirrors.aliyun.com/composer/(去掉-g) - 它会自动往
composer.json顶层添加"repositories"字段,key 固定为"packagist" - 如果
composer.json里已有"repositories": [](数组),命令会报错;需先手动改成"repositories": {}(对象)再执行 - 改完必须删掉
vendor/和composer.lock,再跑composer install——旧 lock 文件里的哈希值来自旧源,和镜像元数据不匹配就会中断
composer install -vvv 日志里照样显示 packagist.org。










