无法将特定分支定义为作曲家的要求



我在使用特定分支作为项目的依赖性方面遇到了一些麻烦。

我有一个repofityry,我将称为repositoryA,这是我正在使用的项目,而repositoryBrepositoryA依赖的另一个存储库。

但是,我在repositoryB中有一个特定的分支" 1.0",我想为作曲家指定。

我在repositoryA中尝试的是在Composer.json中指定以下要求(如每行都在不同的尝试中,而不是在同一文件/尝试中):

// ...
"my-vendor/repositoryB": "1.0-dev",
"my-vendor/repositoryB": "1.0.x-dev",
"my-vendor/repositoryB": "dev-1.0",
"my-vendor/repositoryB": "dev-1.0.x",
"my-vendor/repositoryB": "1.0",
"my-vendor/repositoryB": "1.0.x",
// ...

当我尝试设置这些约束时,我收到的错误消息是:

The requested package my-vendor/repositoryB 1.0.x-dev exists as  
my-vendor/repositoryB[dev-master] but these are rejected by your constraint.

在搜索了此问题之后,我似乎需要一个" 1.0"分支的别名才能起作用,因此我还尝试将以下内容添加到repositoryB中的copos.json:

中。
//...
"extra": {
  "branch-alias": {
    "1.0-dev": "1.0.x-dev"
  }
}
//...

我对此的工作方式有什么误解?

我找到了一个解决方案:

事实证明,我可以通过在运行composer update之前先将composer.lock中的分支更新为1.0.x-dev

您需要标记分支并在作曲家中使用此标签。在这种情况下,无需使用Branch-Alias Composer功能。

如果您的分支命名为 1.0,则1.0.x-dev的约束应起作用(另请参见分支上的文档)。如果它不起作用,那么您需要告诉我们哪个错误作曲家正在返回,因为如果您不向我们提供所有相关信息,我们将无法为您提供帮助。

相关内容

  • 没有找到相关文章

最新更新