在我的composer.json中,我有一个私有的vcs存储库:
{
"type": "vcs",
"url": "https://github.com/username/repo.git"
}
当我打电话给php composer.phar update
时,我得到以下信息:
Your GitHub credentials are required to fetch private repository metadata (https://github.com/username/repo.git)
The credentials will be swapped for an OAuth token stored in /root/.composer/config.json, your password will not be stored
To revoke access to this token you can visit https://github.com/settings/applications
Username: myusername
Password:
Authentication required (api.github.com):
Username: myusername
Password:
Authentication required (api.github.com):
Username: myusername
Password:
Authentication required (api.github.com):
Username:
不管我输入多少次我的 github 凭据,它都会不断询问。如果我输入不正确的,它会做同样的事情,没有错误或最大尝试次数。
任何想法会导致这种情况吗?我正在使用最新版本作为可通过运行来检索的:
php composer.phar self-update
变通办法
作为现在的解决方法,我已经转到: https://github.com/settings/applications 并手动生成令牌,然后运行:
php composer.phar config -g github-oauth.github.com <token>
但我仍然想知道为什么它不能自动完成
这是因为当前版本的作曲家aa74818fe00c5f5eb57c1c38b807e9e2950c670c
不支持GitHubs 2因素授权。因此,任何具有该设置的帐户都会遇到此问题。
已经为它创建了一个拉取请求,应该可以进行即将推出的版本更新之一。
我也遇到了这个问题,尝试向我的 GitLab 帐户添加和重新添加 SSH 密钥,没有区别。原来git
没有安装在机器上。
apt-get install git
或
yum install git