我们在 VPN 后面有一个公司的 GitLab 服务器。那里的包被设置为公开的,但它们实际上是“私有的”,因为未经我们的 VPN 授权您无法访问存储库。我创建了一个存储库,它依赖于其他存储库(在同一台服务器上)。回购 1:"name": "xxx/repo1","repositories": [ { "type": "vcs", "url": "http://pvt/repo2" }],"require": { "xxx/repo2": "dev-master"},回购 2:"name": "xxx/repo2"我遇到的问题是当我尝试repo1在我的其他服务之一中使用时。"name": "other/service","repositories": [ { "type": "vcs", "url": "http://pvt/repo1" }],"require": { "xxx/repo1": "dev-master"},"minimum-stability": "dev","prefer-stable": true,这样做composer install只是告诉我repo2找不到。我可以这样解决:"name": "other/service","repositories": [ { "type": "vcs", "url": "http://pvt/repo1" }, { "type": "vcs", "url": "http://pvt/repo2" }],"require": { "xxx/repo1": "dev-master"},但这远非理想。如果我有 10 个服务并且都需要repo1运行,那么在里面引入一个新的依赖项repo1需要我更改 10 个composer.json文件。为什么这个功能不像其他依赖项那样起作用,以便自动提取所请求包的所有必需依赖项?我尝试将其添加到配置中:"config": { "gitlab-domains": [ "pvt" ], "gitlab-token": { "pvt" : "---my-token---" }},但这基本上什么也没做。我也尝试pvt用确切的服务器 IP 替换,但没有任何改变。有没有办法使这项工作?注意:我不想使用任何外部服务,如 Private Packagist 或 Satis。
2 回答
噜噜哒
TA贡献1784条经验 获得超7个赞
GitLab 13.2(2020 年 7 月)提供了替代方案
使用 GitLab Composer Repository 管理 PHP 依赖项
PHP 开发人员需要一种机制来共享和使用他们项目的依赖项。Composer 是 PHP 的依赖管理器,它允许您声明项目所依赖的库,它会为您管理它们。
我们很自豪能够提供直接内置于 GitLab 中的 Composer 存储库。
PHP 开发人员现在可以更轻松地发现和管理其项目的依赖项。通过与 Composer 集成,GitLab 提供了一个集中位置,可以在与源代码和管道相同的位置查看这些包。Package Registry 中的 PHP 依赖项将列在 All 选项卡下,而不是 Composer-specific 选项卡下。我们将通过在即将到来的里程碑中添加特定于 Composer 的选项卡来迭代改进这一点。
- 2 回答
- 0 关注
- 119 浏览
添加回答
举报
0/150
提交
取消