可用repositories配置临时替换包源:vcs方式指向远程dev分支,path方式挂载本地代码实现即时调试;验证后删除配置并update即可恢复稳定版本,所有操作仅限本地。

直接在本地用 composer require 指定远程 dev 分支,配合 repositories 配置,就能隔离测试,完全不碰线上环境。
用 repositories 覆盖包源
在本地 composer.json 里临时加一段自定义仓库配置,把目标包指向它的 gitHub/gitlab dev 分支:
"repositories": [ { "type": "vcs", "url": "https://github.com/vendor/package-name.git" } ]
然后运行:
composer require vendor/package-name:dev-main --no-update composer update vendor/package-name
注意:dev-main 或 dev-develop 要换成实际分支名;--no-update 是防止意外更新其他依赖。
用 path 仓库直接挂载本地代码
如果你已把包代码 clone 到本地(比如 ~/code/my-package),更灵活的方式是用 path 类型仓库:
"repositories": [ { "type": "path", "url": "../my-package" } ]
再执行:
composer require vendor/package-name:@dev
Composer 会软链接过去,改本地包代码立刻生效,适合深度调试。
测试完快速还原
验证通过后,删掉 repositories 块,再跑一次 composer update vendor/package-name,就会切回 Packagist 上的稳定版本。
- 所有改动只在本地
composer.json和vendor/目录,不影响线上部署脚本或 CI - 别提交
repositories到 git —— 可加到.gitignore或用composer.json的config.platform配合分支别名规避 - 如需多人协作测试,可把临时配置写进
composer.local.json,用COMPOSER=composer.local.json composer install加载
基本上就这些。不复杂但容易忽略的是:别忘了删配置、别提交临时仓库声明、优先用 path 方式做高频迭代。