【发布时间】:2023-03-09 08:49:01
【问题描述】:
我们有许多私有存储库,我们希望将它们包含在使用 Composer 的 PHP 应用程序中。 composer.json 文件包含这个条目,它定义了我们的第一个私有存储库:
"repositories": [
{
"type": "vcs",
"url": "https://github.com/vendor/package.git"
}
]
然后我们像往常一样需要存储库:
"require": {
"vendor/package": "~1.0.0"
}
我做的唯一额外的事情是在 GitHub 上设置一个私有访问令牌并将其存储在 composers auth.json 文件中。看起来像:
{
"github-oauth": {
"github.com": "<my_access_token>"
}
}
一切看起来都已正确设置,Composer 可以使用访问令牌通过 HTTPS 访问 GitHub,但我们收到的错误如下所示:
[RuntimeException]
Failed to clone https://github.com/vendor/package.git via https protocols, aborting.
- https://github.com/vendor/package.git
Cloning into bare repository '/home/vagrant/.composer/cache/vcs/https---github.com-vendor-package.git'...
remote: Invalid username or password.
fatal: Authentication failed for 'https://github.com/vendor/package.git/'
访问令牌是有效的,因为我已经使用它超过了您经常看到的超出速率限制的消息,并且它在 GitHub 上显示为最近使用。
我们在这里错过了一步吗?理想情况下,我们希望仅使用 Composer 和 GitHub 来完成此操作。设置 Satis 或 Trojan 并不是我们热衷于做的事情。从文档看来,我们应该能够使用个人访问令牌访问我们的私有仓库。
【问题讨论】:
标签: php git github composer-php