Composer php 如何使用composer从命令行添加非公共存储库?

Composer php 如何使用composer从命令行添加非公共存储库?,composer-php,packagist,Composer Php,Packagist,我想添加一个新的包,它不是在PackageGist,而是一个本地或非公共存储库。我知道如何在composer.json中实现这一点。例如: "repositories": [ { "type": "vcs", "url": "https://bitbucket.org/xxxx/xxxxx.git" } ], "require": { "xxxx/xxxxx": "dev-master" }, 但我想从命令行执行此操作,以便可以将此非公共

我想添加一个新的包,它不是在PackageGist,而是一个本地或非公共存储库。我知道如何在
composer.json
中实现这一点。例如:

"repositories": [
    {
        "type": "vcs",
        "url": "https://bitbucket.org/xxxx/xxxxx.git"
    }
],
"require": {
    "xxxx/xxxxx": "dev-master"
},
但我想从命令行执行此操作,以便可以将此非公共存储库添加到配置文件中。 在PackageGist注册的软件包我可以添加:

composer require ....

但是如何处理未在PackageGist注册的存储库?

您可以从项目根目录运行以下命令,将存储库添加到项目的composer.json中:

composer config repositories.repo-name vcs https://github.com/<orgname or username>/repo
composer config repositories.repo-name vcshttps://github.com//repo
然后,您可以通过以下方式要求特定回购:

composer require <orgname or username>/repo:dev-branchname
composer require/repo:dev branchname

然后添加带有
composer require package name:dev branchname
的包。这破坏了我的composer的json。json:D我想运行它的命令行,按书来做,而不是hack composer.json,但是很好。D这至少有效:PPro提示:您可以使用
存储库。0
避免它破坏自己的json文件为避免在添加多个回购协议时被覆盖,您可以用自己的字符串替换
repo name