Composer无法从包加载fork


Composer fails to load fork from package

我很难用composer为包加载fork。我正在尝试将Swaggervel,一个适用于Laravel 5的Swagger包集成到我的项目中。当前的开发主机有一个错误,导致与laravel 5不兼容。

但是github上有一个分叉https://github.com/mvpasarel/swagger-laravel它解决了这个问题。

这就是我在composer.json文件中指向fork的方法。

"repositories": [
{
  "type": "vcs",
  "url": "https://github.com/mvpasarel/swagger-laravel"
}],
"require": {
    "laravel/framework": "5.0.*",
    "phpunit/phpunit": "~4.5",
    "jlapp/swaggervel": "dev-master"
}, ...

我阅读了许多不同社区的帖子,了解如何实现我想要的目标。到目前为止,这是我最好的机会,但不幸的是,在我的供应商/项目/文件夹中,我仍然看到来自jlapp/swaggervel的"旧来源",而不是来自mvpasarel/swagger laravel的更新来源。

这里是我堆肥的一部分。锁定

{
        "name": "jlapp/swaggervel",
        "version": "dev-master",
        "source": {
            "type": "git",
            "url": "https://github.com/mvpasarel/swagger-laravel.git",
            "reference": "6e75f294ffa65823247e1f9f9f88402a75aa14f5"
        },
        "dist": {
            "type": "zip",
            "url": "https://api.github.com/repos/mvpasarel/swagger-laravel/zipball/6e75f294ffa65823247e1f9f9f88402a75aa14f5",
            "reference": "6e75f294ffa65823247e1f9f9f88402a75aa14f5",
            "shasum": ""
        },
        "require": {
            "php": ">=5.3.0",
            "zircote/swagger-php": "*"
        },
        "type": "library",
        "autoload": {
            "psr-0": {
                "Jlapp''Swaggervel": "src/"
            }
        },
        "license": [
            "MIT"
        ],
        "authors": [
            {
                "name": "jlapp",
                "email": "jordan@jordanlapp.com"
            }
        ],
        "description": "A great way to integrate Swagger into Laravel",
        "keywords": [
            "laravel",
            "swagger"
        ],
        "support": {
            "source": "https://github.com/mvpasarel/swagger-laravel/tree/master"
        },
        "time": "2014-11-20 21:43:03"
    },

知道我做错了什么吗?非常感谢。

以下是您应该如何加载分叉:

composer.json:

{   
  "repositories": [
    {
      "type": "git",
      "url": "git@github.com:mvpasarel/swagger-laravel.git"
    }   
   ],    
   "require": {
    "laravel/framework": "5.0.*",
    "jlapp/swaggervel": "dev-laravel5"   
   }
}

您必须添加fork的存储库"url": "git@github.com:mvpasarel/swagger-laravel.git",并保留原始包的名称,但在要加载的fork上添加分支的"dev-"+名称,在本例中为:"jlapp/swaggervel": "dev-laravel5"

这就是我使用它的方式,让我知道它是否适合你。