如何不修改require版本号拉取Composer指定开发分支
解决方法
有两种可靠方式可以实现不改require里的版本号,直接拉取指定分支:
方法一:在仓库配置中添加版本别名
修改composer.json里的repositories部分,给目标分支设置一个属于^5.0版本范围内的别名,让Composer认为该分支符合你指定的版本要求:
"repositories": [{ "type": "git", "url": "git@github.com:some/bundle", "versions": { "some/bundle": { "5.0.x-dev": "dev-branch" } } }]
这里5.0.x-dev属于^5.0的版本覆盖范围,Composer会自动将dev-branch分支识别为满足^5.0要求的版本,执行composer update some/bundle即可拉取该分支代码。
方法二:使用命令行强制指定分支(临时生效)
如果不想修改配置文件,可以通过以下步骤临时切换到目标分支:
- 执行命令拉取包的源码版本:
composer require some/bundle:^5.0 --prefer-source - 进入该包的安装目录(默认在
vendor/some/bundle),切换到目标分支:cd vendor/some/bundle git checkout dev-branch
注意:这种方式仅适合临时测试分支代码,后续执行composer update时可能会自动切回符合版本要求的分支,需要重新切换。
内容的提问来源于stack exchange,提问作者talhaamir
相关产品推荐
相关产品推荐

