piotrpress / private-composer
此 Composer 插件为 Composer 添加了对 github 和 bitbucket 协议的支持,以便简化私有仓库的管理。
v2.0.1
2024-02-20 14:34 UTC
Requires
- php: >=7.4
- composer-plugin-api: ^2.0
- piotrpress/remoter: ^1.0
- piotrpress/streamer: ^1.0
README
此 Composer 插件为 Composer 添加了对 github
和 bitbucket
协议的支持,以便简化私有仓库的管理。
私有 Composer 使用 GitHub 和 BitBucket API 在线构建 packages.json
虚拟文件,包含所有所有者仓库中的所有包,这些包可用于 composer.json
文件中 composer
类型的仓库。
示例
无需手动将每个仓库单独添加到 composer.json
文件中,例如
{ "repositories": [ { "type": "vcs", "url": "https://github.com/PiotrPress/private-repo-1.git" }, { "type": "vcs", "url": "https://github.com/PiotrPress/private-repo-2.git" } ], "require": { "piotrpress/private-repo-1": "dev-master", "piotrpress/private-repo-2": "*" } }
使用(在本示例中)github
协议
{ "repositories": [ { "type": "composer", "url": "github://PiotrPress" } ], "require": { "piotrpress/private-repo-1": "dev-master", "piotrpress/private-repo-2": "*" } }
安装
- 将插件作为全局 Composer 要求添加
$ composer global require piotrpress/private-composer
- 允许插件执行
$ composer config -g allow-plugins.piotrpress/private-composer true
身份验证
添加 GitHub/BitBucket API 认证凭据
$ composer config [--global] http-basic.<host> <username> <password>
注意:建议使用 --global
选项以将凭据保存在项目文件之外。
GitHub
github.com
示例
$ composer config --global http-basic.github.com x-oauth-basic token
- 自定义域名示例
$ composer config --global http-basic.example.com x-oauth-basic token
host
- GitHub 的域名,如果为空则等价于:github.com
username
- 总是x-oauth-basic
password
- GitHub 的token
(使用此 链接 生成新的)
BitBucket
bitbucket.org
示例
$ composer config --global http-basic.bitbucket.org username app_password
- 自定义域名示例
$ composer config --global http-basic.example.com username app_password
host
- BitBucket 的域名,如果为空则等价于:bitbucket.org
username
- BitBucket 的username
password
- BitBucket 的app_password
(使用此 链接 生成新的)
在 composer.json
文件中的使用
{ "repositories": [ { "type": "composer", "url": "<github|bitbucket>://<owner>[@<host>]" } ] }
GitHub
github.com
示例
{ "repositories": [ { "type": "composer", "url": "github://PiotrPress" } ] }
- 自定义域名示例
{ "repositories": [ { "type": "composer", "url": "github://PiotrPress@example.com" } ] }
owner
- GitHub 的仓库owner
host
- API 端点域名,如果为空则等价于:github.com
BitBucket
bitbucket.org
示例
{ "repositories": [ { "type": "composer", "url": "bitbucket://PiotrPress" } ] }
- 自定义域名示例
{ "repositories": [ { "type": "composer", "url": "bitbucket://PiotrPress@example.com" } ] }
owner
- BitBucket 的workspace
host
- API 端点域名,如果为空则等价于:bitbucket.org
作为 命令
使用
$ composer packages <github|bitbucket>://<owner>[@<host>]
命令的输出是有效的 packages.json
文件内容。
示例
$ composer packages github://PiotrPress > packages.json
注意
如果有许多仓库要扫描,可能需要增加进程 超时。
需求
- PHP >=
7.4
版本。 - Composer ^
2.0
版本。