php 如何对一些选定的依赖项使用“首选源”,而对其余的依赖项使用“首选dist”?

mrzz3bfm  于 2023-02-03  发布在  PHP
关注(0)|答案(2)|浏览(110)

我想安装所有由我使用“prefersource”选项维护的依赖项,以及所有其他不由我使用“preferdist”维护的依赖项。
Composer有这个功能吗?我想可能会有这样的功能,但我找不到:

"my/dependency":"v1.2.3@dist",
"other/dependency":"v4.5.6@source",

有什么想法吗?

2wnc66cl

2wnc66cl1#

现在有了一个优先安装功能。(我不确定在最初的问题提出时是否有此功能)
默认为auto,可以是source、dist或auto中的任何一个。此选项允许您设置Composer首选使用的安装方法。可以选择模式散列,以获得更精细的安装首选项。

{
    "config": {
        "preferred-install": {
            "my-organization/stable-package": "dist",
            "my-organization/*": "source",
            "partner-organization/*": "auto",
            "*": "dist"
        }
    }
}

这使您可以为每个依赖项指定首选安装方法。
有关托管依赖项的可用方法,请参见repositories部分。

vtwuwzda

vtwuwzda2#

您不应该允许您自己的依赖项具有发行版下载链接。
这就排除了使用Github,但可以很好地与任何纯Git仓库一起工作。Composer显式地检查repo url是否指向Github,然后尝试从已知源下载,而不是克隆repo,这通常要快得多。
因此,您可能应该参考本地Git repos,而不是Github(我假设您现在正在这样做)。
然而,没有办法决定每个依赖项使用哪个方法。

相关问题