我们有许多私有存储库,我们希望使用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或特洛伊木马。从文档中可以看出,我们应该能够使用个人访问令牌访问我们的私有记录。
发布于 2015-09-08 13:44:24
使用以下语法,而不是HTTPS:
"repositories": [
{
"type": "vcs",
"url": "git@github.com:vendor/package.git"
}
]我们经常成功地使用它。
见此处:https://getcomposer.org/doc/05-repositories.md#using-private-repositories
https://stackoverflow.com/questions/32459354
复制相似问题