composer-php - 无法使用 Composer 将特定分支定义为需求

标签 composer-php

我在将特定分支用作项目中的依赖项时遇到了一些问题。

我有一个存储库,我会调用 repositoryA这是我正在做的项目,还有 repositoryB这是一个不同的存储库,repositoryA要看。

但是,我在 repositoryB 中有一个特定的分支命名为“1.0”,我想指定供 Composer 使用。

我在 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 中的 composer.json 中。 :
//...
"extra": {
  "branch-alias": {
    "1.0-dev": "1.0.x-dev"
  }
}
//...

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

最佳答案

我找到了一个解决方案:

事实证明,我可以通过首先更新 composer.lock 中的分支来使其工作。至 1.0.x-dev运行前手动手动 composer update .

关于composer-php - 无法使用 Composer 将特定分支定义为需求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40884252/

相关文章:

php - 最新的 symfony 安装程序与 Composer

php - Symfony 6 服务 Autowiring

php - 无需命令行即可在简单服务器上安装 Laravel

php - Composer 自动加载来自外部供应商的类

php - Composer 的自动加载器找不到应用类。为什么?

php - 拉维尔 | ReflectionException - 类不存在

symfony - phpDocumentor - 无法找到 GraphViz 包的 dot 命令

php - Composer 自动加载

php - Composer PSR-4 自动加载 "class not found"调试

repository - 在 Composer 安装时忽略 packagist.org |更新