Composer 自定义存储库本地和远程

Composer custom repositories local AND remote

我们正在使用不在 Packagist 上的自定义存储库,因此需要使用作曲家的 "repositories" 密钥:

{
    "type": "vcs",
    "url": "https://github.com/name/repo"
},

但是我们也想在将它们推送到 GitHub

之前在本地开发这些内容
{
    "type": "vcs",
    "url": "/path/to/repo"
},
{
    "type": "vcs",
    "url": "https://github.com/name/repo"
}

然而,如果新用户下载 repo 并且只想使用 GitHub(也许他们不会在本地开发),他们会收到一个大红色错误:

[InvalidArgumentException]
No driver found to handle VCS repository /path/to/dir

有没有一种方法可以让 composer 容忍这种情况,然后向下移动到下一行找到 repo?

据我所知,这现在是可能的。定义的“/path/to/dir”需要存在,它需要是一个 repo 并且 repo 需要包含一个 composer.json 文件,否则 Composer 将失败。

听起来像是 PR 忽略无效存储库定义的有效点,但不确定 Jordie 对此有何看法;)

作为替代方案:您可以设置自己的 Satis 存储库并从那里提取包。