无法在我的 Laravel 项目中使用 fork 存储库 - “找不到匹配的包版本”
Posted
技术标签:
【中文标题】无法在我的 Laravel 项目中使用 fork 存储库 - “找不到匹配的包版本”【英文标题】:Unable to use fork repository in my Laravel project - "Could not find a matching version of package" 【发布时间】:2019-10-20 13:03:10 【问题描述】:我用某人的叉子 (https://github.com/hardevine/LaravelShoppingcart) 制作了我的叉子 (https://github.com/digital-bird/LaravelShoppingcart)。
我想在我的 Laravel 项目中使用我的 fork + 我想在将来修改它。
1) 我通过composer remove hardevine/shoppingcart
从这个项目中删除了hardevine的叉子
2) 然后我在我的 fork 中修改了composer.json
:
"name": "digital-bird/shoppingcart",
新作者
在要求下我添加了:"hardevine/shoppingcart": "dev-master",
最后我添加了存储库部分:
⬇️
"repositories": [
"type": "vcs",
"url": "https://github.com/digital-bird/LaravelShoppingcart"
],
我的 fork 的新 package.json
看起来像:https://github.com/digital-bird/LaravelShoppingcart/blob/master/composer.json
3) 我把它推送到我的 fork 的 master 分支
4) 我去了我的 Laravel 项目并输入:
composer require digital-bird/shoppingcart
我收到大红色错误:
[InvalidArgumentException] 找不到匹配的版本 包装数字鸟/购物车。检查包裹拼写,您的 版本约束,并且包在稳定性中可用 这符合您的最低稳定性(稳定)。
我做错了什么?
【问题讨论】:
【参考方案1】:你应该添加这个:
"repositories": [
"type": "vcs",
"url": "https://github.com/digital-bird/LaravelShoppingcart"
],
到您的 Laravel 主项目的 composer.json
,而不是您的库。还添加"hardevine/shoppingcart": "dev-master",
似乎没有意义,它可能会产生一些冲突。
【讨论】:
感谢您的反馈,我会尽力让您知道,敬请期待。 嘿,Rob,非常感谢您的提示,一切进展顺利,我学到了一些东西。谢谢!【参考方案2】:你需要将你的 Github 仓库提交到Packagist
【讨论】:
如果你将它添加到正在使用这个fork的项目的repositories
部分,则不需要在packagist中注册fork。
Composer 调用 packagist.org
所以如果你输入 composer require /composer.json
以检查包是否可用。无需使用 packagegist。见:getcomposer.org/doc/…以上是关于无法在我的 Laravel 项目中使用 fork 存储库 - “找不到匹配的包版本”的主要内容,如果未能解决你的问题,请参考以下文章
无法在 laravel 项目中使用 composer 安装 blocktrail/blocktrail-sdk
Laravel Valet托管网站返回Chrome中的“无法访问网站”
Laravel Mix 我无法访问我的 javascript 类