Composer - The requested package issue on vcs

戏子无情 提交于 2021-01-27 14:55:50

问题


I forked https://github.com/calebporzio/onboard to https://github.com/mpjraaij/onboard/tree/dev-bugfix

My composer file up updated to

{
    "name": "laravel/laravel",
    "description": "The Laravel Framework.",
    "keywords": ["framework", "laravel"],
    "license": "MIT",
    "type": "project",
    "repositories": [
        {
            ...
        },
        {
            "type": "vcs",
            "url": "https://github.com/mpjraaij/onboard"
        }
    ],
    "require": {
        ...
        "calebporzio/onboard": "dev-bugfix",
        ...
    },
    "require-dev": {
        ...
    },
    "autoload": {
        "classmap": [
            "database/seeds",
            "database/factories"
        ],
        "psr-4": {
            "App\\": "app/"
        }
    },
    "autoload-dev": {
        "psr-4": {
            "Tests\\": "tests/"
        }
    },
    "extra": {
        "laravel": {
            "dont-discover": [
            ]
        }
    },
    "scripts": {
        "post-root-package-install": [
            "@php -r \"file_exists('.env') || copy('.env.example', '.env');\""
        ],
        "post-create-project-cmd": [
            "@php artisan key:generate"
        ],
        "post-autoload-dump": [
            "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
            "@php artisan package:discover"
        ]
    },
    "config": {
        "preferred-install": "dist",
        "sort-packages": true,
        "optimize-autoloader": true
    }
}

However I get the following error when I run composer update

Your requirements could not be resolved to an installable set of packages.

Problem 1 - The requested package calebporzio/onboard dev-bugfix exists as calebporzio/onboard[dev-master, v1.0, v1.1, dev-dev-bugfix] but these are rejected by your constraint.

How do I resolve this?


回答1:


The solution is actually in the error message: The requested package ... exists as calebporzio/onboard[dev-master, v1.0, v1.1, dev-dev-bugfix].

In Composer, to reference any branch that does not look like a version, you need to add dev- in front of it. To reference the master branch, you would use dev-master. Same thing applies here.

So to reference a branch which is called dev-bugfix, you need to use dev-dev-bugfix in your composer.json file, just as the error message is suggesting.




回答2:


You are requiring the package version dev-bugfix, but the error tells you it doesn't exists anymore because has been deleted or renamed, only it's available [dev-master, v1.0, v1.1, dev-dev-bugfix].

You need to change your require to some of the available versions, I would pick the most updated stable version:

"require": {
    ...
    "calebporzio/onboard": "1.1",
    ...
},


来源:https://stackoverflow.com/questions/49531102/composer-the-requested-package-issue-on-vcs

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!