为什么我不能要求"dev-master"对此包进行特定提交?



我正在尝试通过Composer(特别是dev-master(安装apigen/apigen。最近的提交需要在某个提交时进行咆哮/更好的反思。我遇到了Composer无法找到特定引用(#c87d856(的问题。

为了重现这个问题,我创建了一个最小的composer.json文件,它只需要丢失的包/版本:

{
"name": "a-vendor/some-library",
"type": "library",
"repositories": [
{
"type": "package",
"package": {
"name": "roave/better-reflection",
"version": "dev-master#c87d856",
"source": {
"type": "git",
"url": "https://github.com/roave/BetterReflection.git",
"reference": "commit/c87d856"
}
}
}
],
"require-dev": {
"roave/better-reflection": "dev-master#c87d856"
}
}

我希望将该存储库作为一个包添加可能会解决这个问题。我认为回购和包裹名称之间的差异可能是问题所在(。然而,我遇到了同样的问题,消息是:

请求的包roave/better反射dev-master#c87d856作为咆哮/更好的反射存在[0.1.0,1.0.0,1.0.1,1.1.0,1.2.0,2.0.0、2.0.1、2.0.2、3.0.0、3.1.0、3.1.1、3.2.0、3.3.0、3.4.0、3.5.0、4.0.0、4.1.0、4.10.0、4.10.x-dev、4.11.0、4.11.x-dev、4.12.x-dev,4.2.0、4.3.0、4.4.0、4.5.0、4.6.0、4.6.1、4.7.0、4.8.0、4.8.x-dev,dev-dependabot/composer/infection-0.17.5,dev-dependabot/composer/phpstan/phpstan-0.12.48,dev-dependabot/composer/phpstan/phpstan-0.12.52,dev-dependabot/composer/phpstan/phpstan-0.12.53,dev-dependabot/composer/vimeo/psalm-3.16,dev-dependabot/composer/vimeo/psalm 3.18.2,dev implement newInstanceArgs,dev master#c87d856],但这些是被你的约束拒绝了。

您可以看到我添加的存储库在列表的末尾,但Composer没有将其作为匹配项。

有人知道我如何帮助Composer定位这个版本/提交,并为需要它的依赖项(apigen/apigen(工作吗?

$ composer req --dev roave/better-reflection:4.12.x-dev#c87d856

该回购没有master分支,并且分支4.12.x似乎已别名为4.12.x-dev(packagist(。

最新更新