我正在尝试使用 composer 从github自动克隆一个不在 packagist 中的git存储库,但它不起作用,我不知道我做错了什么。
我认为我必须将它包含在“存储库”中,如下所示:
"repositories": [
{
"url": "https://github.com/l3pp4rd/DoctrineExtensions.git",
"type": "git"
}
],
然后可能在“要求”部分列出它。它应该类似于 此示例,但它不起作用。它只是给出了这个错误:
您的要求无法解决为一组可安装的软件包。
有没有人尝试过做这样的事情?
原文由 martin 发布,翻译遵循 CC BY-SA 4.0 许可协议
在 2013 年撰写本文时,这是一种方法。 Composer 增加了对更好方法的支持:参见@igorw 的 回答
你有存储库吗?
Composer 支持 Git、Mercurial 和 SVN。
您对存储库有写入权限吗?
是的?
存储库是否有
composer.json
文件如果您有存储库,您可以写入:添加
composer.json
文件,或修复现有文件,不要使用以下解决方案。转到@igorw 的 答案
仅当您没有存储库时才使用它
或者如果存储库没有
composer.json
并且您无法添加它这将覆盖 Composer 可能能够从原始存储库的
composer.json
读取的所有内容,包括包的依赖项和自动加载。使用
package
类型会将正确定义所有内容的负担转移到您身上。更简单的方法是在存储库中有一个composer.json
文件,然后使用它。此解决方案实际上仅适用于您无法更改的废弃 ZIP 下载或您只能阅读但不再维护的存储库的极少数情况。