通过composer克隆git存储库

时间:2014-02-02 16:09:01

标签: php git composer-php bitbucket

家伙! 我只想通过composer克隆存储库。但不幸的是 - 我不能。

我的composer.json看起来像:

{
    "repositories": [
        {
            "type": "vcs",
            "url": "https://bitbucket.org/yuriikrevnyi/bitrix-teil-framework"
        }
    ],
    "require": {
        "mockery/mockery": "dev-master@dev",
        "phpunit/phpunit": "3.7.*"
    }
}

但它无法发挥作用。 那么,你能帮我一点吗?

还有一个问题。如何用作曲家“克隆”私人回购?可以说,我们有相同的回购 - https://bitbucket.org/yuriikrevnyi/bitrix-teil-framework。管理员密码是 - 密码

那么,composer.json现在应该怎么看?

谢谢!

2 个答案:

答案 0 :(得分:1)

在您发布的composer.json中,您说的是多个事实。

  1. 您声明此composer.json所属的软件需要名为“mockery / mockery”和“phpunit / phpunit”的软件包。
  2. 您还声明存在一些可能包含某些软件的存储库。
  3. 您没有说明的是Composer应该克隆该存储库 - 而您无法使用Composer执行此操作。默认情况下,Composer只会知道在packagist.org注册的软件包,并且还会查看任何已声明的存储库,以便在需要软件时查看其中的软件。

    因此,在Bitbucket托管的存储库中没有另一个composer.json,什么都不会发生。此外,无需在那里托管的软件,也不会发生任何事情。

    您的问题描述缺少帮助ypu更好的最重要的部分:

    1. 描述你在做什么。
    2. 描述预期结果。
    3. 描述实际结果及其与预期结果的不同之处。
    4. 你所描述的大致是第1点(可能有更多细节),你的“它不起作用”的单词未能描述第3点,而第2点完全没有。

答案 1 :(得分:1)

respositories部分仅用于定义packagist.org数据库中不存在的包,但它存在于“源代码管理”中。

所以,就像你在composer.json中告诉作曲家有一个源控制的包,这里是你从中得到的详细信息,通过定义url等。

但这还不够,因为这只是定义而不是消费(下载)包。为此,您还需要将其添加到您的需求部分。

{
  "repositories": [
    {
      "type": "vcs",
      "url": "https://bitbucket.org/yuriikrevnyi/bitrix-teil-framework"
    }
  ],
  "require": {
    "mockery/mockery": "dev-master@dev",
    "phpunit/phpunit": "3.7.*",
    "yuriikrevnyi/bitrix-teil-framework", "*"
  }
}