Composer:无法从我的服务器获取自定义存储库

时间:2014-10-08 22:25:02

标签: git repository composer-php

我想为作曲家创建自己的存储库。我们称之为myrepo.git。所以在我的repo的根目录上创建并放置了composer.json,它只有这样的最小值:

{
    "name": "My/Myrepo",
    "description" : "My repository",
    "version": "1.0.0",
}

我把它放到我的git服务器上,所以我能够通过git从git中获取它:

git clone git://myserver.com/myrepo.git

但我想从作曲家那里得到它。所以我在工作站上创建了composer.json:

{
    "repositories": [
    {
        "type": "vcs",
        "url": "git://myserver.com/myrepo.git"
    }
    ]
}

之后我打电话给作曲家安装。一切都没有错误但我的存储库没有成功。我不知道为什么。当我尝试从github添加一些存储库时,它填充fetch没有问题,但我的存储库没有。没错。根本不值一提。所以输出看起来像这样:

composer install
Loading composer repositories with package information
Installing dependencies (including require-dev)       
Nothing to install or update
Generating autoload files

所以我在我的存储库(myrepo.git)中出了点问题。但如果是这样,我不明白我在composer install命令中没有错误。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

  • 如果您有composer.lock个文件composer install,则会从此文件中读取依赖项并进行安装。 - >在这种情况下,您应该改为运行composer update My/Myrepo

  • 您已在composer.json内标记了该版本。你也用GIT标记了版本吗?我不知道如果不是会发生什么。 GIT标记版本应该相同,或者您可以保留version属性(推荐):

    https://getcomposer.org/doc/04-schema.md#version

      

    注意:Packagist使用VCS存储库,因此上面的语句是非常的   Packagist也是如此。自己指定版本   由于人为错误,最有可能最终在某些时候出现问题。

  • 如果您已经安装了同名+版本的东西,则必须通过删除已安装的库(我们自己承担风险")rm -Rf vender/My/Myrepo来强制安装。最终有一个更好的批准力量。