Composer无法从包中加载fork

时间:2015-02-22 16:55:04

标签: php github composer-php swagger

我很难为使用composer的包加载fork。 我正在尝试将Swaggervel(Laravel 5的Swagger包)集成到我的项目中。当前的dev-master有一个错误导致与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"
}, ...

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

刚刚完成这里是我的composer.lock的一部分

{
        "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"
    },

知道我做错了什么吗?谢谢!

1 个答案:

答案 0 :(得分:2)

以下是加载fork的方法:

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"

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