【问题标题】:custom symfony2 bundle installation with composer from private bitbucket repository使用来自私有 bitbucket 存储库的作曲家自定义 symfony2 包安装
【发布时间】:2014-01-10 14:28:35
【问题描述】:

我正在拼命尝试通过 composer 安装我的 Symfony Bundle。我做了以下事情:

  • 在包的根文件夹 (SymfonyProject/src/My/Bundle) 中创建了一个 bitbucket git repo
  • 创建了一个 composer.json 文件:

    {
        "name": "my/bundle",
        "description": "my desc",
        "type" : "symfony-bundle",
        "require": {
            "foreign/bundle": "dev-master"
        },
        "license": "proprietary",
        "authors": [
            {
                "name": "Me",
                "email": "me@mycompany.com"
            }
        ],
        "minimum-stability": "dev",
        "autoload": {
           "psr-0": { "My\\Bundle\\": "" }
        },
        "target-dir" : "My/Bundle"
    }
    
  • 然后我创建了一个测试项目并将以下内容添加到 symfony 根目录中的 composer.json:

    "require" : {
         "my/bundle" : "dev-master"
    },
    "repositories" : [
          "type" : "vcs",
          "url" : "https://myusername:password@bitbucket.org/mycompany/myrepo.git"
    ]
    
  • 我调用 composer update my/bundle -vvv 并得到以下输出(不感兴趣的东西被删除):

     Loading composer repositories with package information
     Executing command (CWD): git clone --mirror 'https://username:****@bitbucket.org/mycompany/myrepo.git'
     '/home/myname/.composer/cache/vcs/https---repocachedir/'
     Executing command (/home/myname/.composer/cache/vcs/https---repocachedir/): git show-ref --tags
     Executing command (/home/myname/.composer/cache/vcs/https---repocachedir/): git branch --no-color --no-abbrev -v
     Executing command (/home/myname/.composer/cache/vcs/https---repocachedir/): git branch --no-color
     Executing command (/home/myname/.composer/cache/vcs/https---repocachedir/): git show 'master':composer.json
     Executing command (/home/myname/.composer/cache/vcs/https---repocachedir/): git log -1 --format=%at 'master'
     Reading composer.json of my/bundle (master)
     Reading /home/myname/.composer/cache/vcs/https---repocachedir/09esdfsdfdb74ce0998ddsdfsd59028969b8edef35f872 from cache
     **Importing branch master (dev-master)**
     Downloading https://packagist.org/packages.json
    

最后的输出是“importing branch master”,没错吧?之后,包装师的东西被取出。 Composer install 也不会工作,不会安装包。我究竟做错了什么?

如果有人能启发我,我会很高兴!!!

【问题讨论】:

    标签: php composer-php bitbucket


    【解决方案1】:

    我有一个使用“git”类型的类似设置。

    它看起来也像使用缓存版本?

    这可能是空的吗?

    可以从(来自 Composer 文档)中找到并删除它:

    “在 unix 系统上默认为 $home/cache,在 Windows 上默认为 C:\Users\\AppData\Local\Composer。”

    【讨论】:

    • 您好,谢谢您的回答。我已经删除了上面输出的缓存文件。作曲家会做同样的事情。缓存的 repo 似乎是空的,除了 composer.json (这是上面的哈希文件)......为什么?
    • 您能否使用作曲家使用的密钥从 bitbucket 签出库?我想知道这是否可能是权限问题(通常是这样)。
    • 您是否在库的 composer.json 中设置了完整的自动加载路径?也许作曲家看不出它的意思是什么?
    • 我的意思是,“root”中的所有内容都如上面的作曲家文件所暗示的那样吗?
    • Doctrine Common 库将所有​​内容都放在 /lib 中,我一直遵循该约定。 "autoload": { "psr-0": { "Doctrine\\Common": "lib/" }}
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-11-15
    • 1970-01-01
    • 2015-06-19
    • 2017-07-03
    • 2015-09-20
    • 2017-11-04
    • 2016-01-15
    相关资源
    最近更新 更多