应执行composer config --global --unset repos.packagist.org并运行composer clear-cache,同时检查项目级composer.json中是否残留repositories字段及环境变量COMPOSER_REPO_PACKAGIST,确保无干扰后验证composer show -p输出URL为https://packagist.org。

直接删掉 repos.packagist.org 这个键,别碰整个 repos 对象——否则你加的私有源、GitHub 源全会消失。
先确认镜像到底配在哪一层
Composer 镜像配置有三层:全局(~/.composer/config.json)、项目级(composer.json 的 repositories 字段)、环境变量(COMPOSER_REPO_PACKAGIST)。项目级优先级最高,哪怕全局已清,项目里还留着就照样走镜像。
- 查全局:运行
composer config --global repos.packagist.org,有输出说明全局设了 - 查项目级:进项目根目录,运行
composer config repos.packagist.org,不加--global - 查环境变量:
echo $COMPOSER_REPO_PACKAGIST(Linux/macOS)或echo %COMPOSER_REPO_PACKAGIST%(Windows) - 顺手搜一下
composer.json里有没有"repositories"块,尤其注意是否嵌套在"extra"或其他字段里
精准删除 repos.packagist.org 键
用 config --unset 是最安全的方式,它只删指定路径,不会误伤其他自定义源。别用 composer config --unset repos ——这会清空整个 repositories 对象,连你搭的私有包仓库都一起没了。
围绕关键发现、作用机制、临床相关性及研究局限性展开讨论。适用于撰写或优化任何生物医学论文的“讨论(Discussion)”部分——包括结果解读、与既往文献关联、阐释意外发现、界定研究局限性,以及撰写结论。当用户输入以下任一指令时也会自动触发该功能: - “write my discussion” - “help me discuss my findings” - “how do I compare to prior studies” - “write the limitations par
- 删全局镜像:
composer config --global --unset repos.packagist.org - 删项目级镜像:
composer config --unset repos.packagist.org(在项目根目录下执行) - Windows 用户注意:
.在 CMD 中可能被识别为路径分隔符,建议改用 PowerShell 或 WSL 执行 - 删完立刻验证:
composer config --global repos.packagist.org应该报错或无输出
清缓存 + 验证真实请求地址
删完配置不等于立刻生效,旧镜像元数据可能还在缓存里;更关键的是,得看 Composer 实际发请求时连的是哪个域名,而不是只信配置输出。
- 必须执行:
composer clear-cache,否则可能继续命中缓存里的镜像地址 - 验证真实行为:
composer install -vvv 2>&1 | grep -i 'GET https'(Linux/macOS),观察日志里实际发起的 URL 是否为https://packagist.org - 或用诊断命令:
composer diagnose -v,末尾显示 “Checkinghttps://packagist.org/packages.json” 才算真正还原 - 如果仍走国内地址,大概率是网络层劫持(如 DNS 或 HTTP 重定向),不是配置问题,需换网络环境或加
--no-plugins排查
最容易被忽略的是 composer.lock 里固化了镜像源地址——它不会因删配置自动更新。首次还原后务必跑一次 composer update,让锁文件重新生成并绑定到 packagist.org。

















