当我想用作曲家安装LaravelShoppingcart时:
$ composer require gloudemans/shoppingcart
这个返回错误。因为作曲家更新了laravel版本5.5到5.6而且ShoppingCart还没有工作5.6。如何安装这个包而不更新composer?
答案 0 :(得分:1)
您需要使用Laravel 5.5或分叉程序包并自行修改版本依赖项:
// composer.json, 5.5 is the highest supported version
"require": {
"illuminate/support": "5.1.*|5.2.*|5.3.*|5.4.*|5.5.*",
"illuminate/session": "5.1.*|5.2.*|5.3.*|5.4.*|5.5.*",
"illuminate/events": "5.1.*|5.2.*|5.3.*|5.4.*|5.5.*"
},
虽然存在传递拉取请求:
https://github.com/Crinsane/LaravelShoppingcart/pull/425
但是,如果你不能等待拉取请求被接受,那么改变是微不足道的。
打包
更新composer.json
:
"require": {
"illuminate/support": "5.1.*|5.2.*|5.3.*|5.4.*|5.5.*|5.6.*",
"illuminate/session": "5.1.*|5.2.*|5.3.*|5.4.*|5.5.*|5.6.*",
"illuminate/events": "5.1.*|5.2.*|5.3.*|5.4.*|5.5.*|5.6.*"
},
"require-dev": {
"phpunit/phpunit": "~5.0|~6.0|~7.0",
"mockery/mockery": "~0.9.0",
"orchestra/testbench": "~3.1"
},
提交更改。
创建新分叉的发布。
在GitHub中创建一个版本
您现在在个人GitHub帐户中有一个已发布的版本,您可以指示作曲家用于安装。
使用composer安装fork
在composer.json
的存储库部分添加您的公共GitHub存储库:
// "repositories" may not exist in your composer.json file.
// add it as a sibling to "require"
"repositories": [
{
"type": "git",
"url": "https://github.com/username/forked-repository"
}
],
并在 require 部分添加一个条目:
// change the version - 2.4.6 - to match your fork's version
"require": {
"username/forked-repository": "2.4.6"
}
您现在可以运行:
composer update
并且fork将安装在您的应用程序中。