GitHub认证通过https失败,返回错误的电子邮件地址
使用GitHub从命令行(通过https,而不是ssh)启动推送或任何其他操作,而不是仅仅调用用户名和密码,但是,当它返回时,它会返回
Username for 'https://github.com': username
Password for 'https://username@github.com':
remote: Invalid username or password.
fatal: Authentication failed for 'https://github.com/username/repository.git/'
我没有@github.com
地址。 密码和用户名是正确的。
我知道我可以切换到SSH并使用密钥,但这并不能解释为什么身份验证通过https失败。
GitHub的支持立即确定了问题的根源:双因素授权。
要通过https在shell上使用GitHub,请创建一个OAuth令牌。 正如页面所示,我确实必须从Keychain中删除我的用户名和密码凭证,但使用osx-keychain
时,令牌将作为密码存储,并且事情的工作方式与在不使用双因素授权的情况下通过https完全相同。
我没有@github.com
地址
您不必: @
是用户名:密码和域之间的分隔符。
这不是电子邮件地址。
完整的GitHub https网址是:
https://username:password@github.com/username/reponame.git
如果没有密码(然后会在命令行中提问),那会给出:
https://username@github.com/username/reponame.git
但是, username@github.com
不是电子邮件地址,只是凭证的第一部分。
确保您的username
和reponame
正确:区分大小写。
请注意,如果您不想在URL中清除所述凭据,则可以在.netrc.gpg
(或Windows上的_netrc.gpg
)中存储和加密凭证。
请参阅“使用https://github
时是否有跳过密码输入的方法”。
[仅限Mac]
如果您需要删除您的身份验证,请使用
git credential-osxkeychain erase
host=github.com
protocol=https
在Mac上。
请参阅https://help.github.com/articles/updating-credentials-from-the-osx-keychain/
链接地址: http://www.djcxy.com/p/16415.html上一篇: GitHub authentication failing over https, returning wrong email address
下一篇: In XCode 4 how do I add a remote GitHub repository to an existing local project?