UnexpectedValueException无法解析版本约束mybranch:无效的版本字符串“ mybranch”

时间:2020-03-18 19:26:10

标签: php composer-php

我正尝试使用目录为foo/bar的目录/work/a中的Composer开发一个PHP库(称为composer.json):

{
    "name": "foo/bar",
    "require": {
        "php": ">=7.2"
    }
}

/work/a是一个git项目,我在分支mybranch

我正在尝试使用目录testing/foobar中包含work/b内容的Composer在本地另一个项目(称为composer.json)中使用此lib:

{
    "name": "testing/foobar",
    "type": "project",
    "repositories": [
        {
            "type": "vcs",
            "url": "/work/a"
        }
    ],
    "require": {
        "php": "^7.4",
        "foo/bar": "mybranch"
    }
}

$ composer install中运行/work/b时收到错误消息:

[UnexpectedValueException]                                            
  Could not parse version constraint mybranch: Invalid version string "mybranch"  

1 个答案:

答案 0 :(得分:5)

您必须在分支名称前加上dev-,因此分支名称必须为dev-mybranch

Loading a package from a VCS repository

...
composer.json中,应在自定义分支名称前加上"dev-"
...

也请检查此问题{/ 3}。

将分支名称更改为具有dev-前缀,并将其添加到/work/b项目中:

{
    "name": "testing/foobar",
    "type": "project",
    "repositories": [
        {
          "type": "vcs",
          "url": "/work/a"
        }
    ],
    "require": {
        "php": "^7.4",
        "foo/bar": "dev-mybranch"
    }
}

运行composer install

❯ composer install
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 1 install, 0 updates, 0 removals
  - Installing foo/bar (dev-mybranch 85c97b7): Cloning 85c97b7b23 from cache
Writing lock file
Generating autoload files
相关问题