Composer - 来自一个项目的多个存储库

Hon*_*nza 6 php composer-php

当我想通过composer安装一些库时,写下就足够了:

composer require vendor/library
Run Code Online (Sandbox Code Playgroud)

和 composer 从 github 下载它。没有必要为 composer.json 提供每个“供应商/库”的 url。作曲家在“内部”做到这一点。但是当我想从例如 bitbucket 添加一些库时,我必须创建这个 composer.json:

{
    "require": {
        "vendor/my-private-repo1": "dev-master",
        "vendor/my-private-repo2": "dev-master"
    },
    "repositories": [
        {
            "type": "vcs",
            "url":  "git@bitbucket.org:vendor/my-private-repo1.git"
        },
        {
            "type": "vcs",
            "url":  "git@bitbucket.org:vendor/my-private-repo2.git"
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

我必须指定要安装的每个库的 url,即使它们来自同一个项目。有什么办法可以让它变短吗?我可以做这样的事情:

{
    "require": {
        "vendor/my-private-repo1": "dev-master",
        "vendor/my-private-repo2": "dev-master",
        "vendor/my-private-repo3": "dev-master",
        "vendor/my-private-repo4": "dev-master"
    },
    "repositories": [
        {
            "type": "vcs",
            "url":  "git@bitbucket.org:vendor/*"
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

我希望我的问题是可以理解的。谢谢你。

Jak*_*las 4

您需要单独指定每个存储库,或者使用satistoran proxy管理您的 Composer 包。您仍然需要定义存储库,但只需定义一次(在 satis 或 toran 中)。