使用Composer下载没有composer.json的git仓库

7

我正在尝试在Symfony 2.1中使用composer从不支持composer且可能永远不会支持composer的github库中拉取供应商。

例如:

旧的Deps文件:

[jQuery]
git=git://github.com/jquery/jquery.git
version=1.8.1

[Mocha]
git=https://github.com/visionmedia/mocha.git

Composer(无法工作)


"repositories": [
    {
        "type": "package",
        "package": {
            "name": "jquery",
            "version": "1.8.1",
            "dist": {
                "url": "git://github.com/jquery/jquery.git",
                "type": "git"
            }
        }
    }
],
"require": {
    "jquery": "1.8.1"
}
2个回答

10
如果您从Git下载,则需要指定一个“source”包而不是“dist”包。使用以下命令:
"repositories": [
    {
        "type": "package",
        "package": {
            "name": "jquery",
            "version": "1.8.1",
            "source": {
                "url": "git://github.com/jquery/jquery.git",
                "type": "git",
                "reference": "1.8.1"
            }
        }
    }
],
"require": {
    "jquery": "1.8.1"
}

如果仓库中没有定义标签,请在上方使用“reference”:“master”。 - Mike Graf
由于公钥权限问题,我遇到了一些问题,但 HTTPS 对我来说很好用:"source": { "url": "https://github.com:/angular/angular.js.git", "type": "git", "reference": "v1.1.5" } - Michael

2
另一个选择是使用Bower进行前端包管理,并仅使用composer来处理其设计之用(PHP包)。

http://bower.io/


确实如此,感谢澄清这一点,有时候并不那么明显,回过头来看就是了。我可能会将Bower添加到我的基于Symfony2的JS重型应用程序中,以帮助分离前端... - blamb

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接