Composer私有存储库问题

时间:2014-04-07 12:17:31

标签: git version-control composer-php

我的作曲家包有问题。我已经创建了3个包用于我的Laravel应用程序,但由于某种原因,“作曲家更新”继续失败。找到问题非常困难,因为它在我的本地计算机上有些工作方式,但它在生产服务器上不起作用。

这就是我的composer.json的样子......

{
"name": "laravel/laravel",
"description": "The Laravel Framework.",
"keywords": ["framework", "laravel"],
"license": "MIT",
"repositories": [
    {
        "type": "vcs",
        "url": "git@bitbucket.org:mbrookspulse8/admin.git",
        "url": "git@bitbucket.org:pulse8/haulfryn-admin-sliders.git",
        "url": "git@bitbucket.org:pulse8/haulfryn-admin-parks.git",
        "branches-path": false,
        "tags-path": false
    }
],
"require": {
"laravel/framework": "4.1.*",
    "cartalyst/sentry": "2.1.*",
    "imagine/Imagine": "0.5.0",
    "edvinaskrucas/notification": "2.*",
    "way/generators": "dev-master",
    "pulse8/admin": "dev-master",
    "pulse8/sliders": "dev-master",
    "pulse8/parks": "dev-master",
    "geedmo/yamm3": "dev-master"
},
"autoload": {
    "classmap": [
        "app/commands",
        "app/controllers",
        "app/models",
        "app/database/migrations",
        "app/database/seeds",
        "app/tests/TestCase.php"
    ]
},
"scripts": {
    "post-install-cmd": [
        "php artisan clear-compiled",
        "php artisan optimize"
    ],
    "post-update-cmd": [
        "php artisan clear-compiled",
        "php artisan optimize"
    ],
    "post-create-project-cmd": [
        "php artisan key:generate"
    ]
},
"config": {
    "preferred-install": "dist"
},
"minimum-stability": "stable"
}

我已经尝试将最低稳定性更改为“dev”,但无济于事。 “branches-path”:false和“tags-path”:false原本不在那里,但我把它们放进去看看是否能解决我的问题。

我所做的每一项改变,都经过我当地的测试,总是有效的,但它似乎永远不会影响我的作品。 SSH已正确设置以检索我的文件。

它只是说“您的要求无法解析为可安装的软件包集。”

令人困惑的是它与我的本地设置完全相同,但它不适用于制作......

1 个答案:

答案 0 :(得分:1)

您不能将多个存储库放入JSON内的一个存储库结构中。这是JSON的限制,但它与常规PHP数组相同:在数组中不能有多个名为“url”的数组键。

"repositories": [
    {
        "type": "vcs",
        "url": "git@bitbucket.org:mbrookspulse8/admin.git",
        "url": "git@bitbucket.org:pulse8/haulfryn-admin-sliders.git",
        "url": "git@bitbucket.org:pulse8/haulfryn-admin-parks.git",
        "branches-path": false,
        "tags-path": false
    }
],

这些存储库必须分别进入专用结构。这就是为什么它被称为“存储库”,它是一个带编号的结构数组(参见花括号周围的[ ]括号)。

"repositories": [
    {
        "type": "vcs",
        "url": "git@bitbucket.org:mbrookspulse8/admin.git",
        "branches-path": false,
        "tags-path": false
    },
    {
        "type": "vcs",
        "url": "git@bitbucket.org:pulse8/haulfryn-admin-sliders.git",
        "branches-path": false,
        "tags-path": false
    },
    {
        "type": "vcs",
        "url": "git@bitbucket.org:pulse8/haulfryn-admin-parks.git",
        "branches-path": false,
        "tags-path": false
    }
],