我一直在使用Github上一小会儿,我一直罚款git add,git commit以及git push到目前为止,没有任何问题.突然间我有一个错误说:
致命:身份验证失败
在终端我克隆了一个存储库,处理了一个文件然后我用来git add将文件添加到提交日志中,当我这样做时git commit,它运行正常.最后,git push要求输入用户名和密码.我正确地把它们放进去,每次我这样做,它都说同样的错误.
有谁知道这个问题的原因是什么以及我如何解决它?
内容.git/config是:
[core]
        repositoryformatversion = 0
        filemode = true
        bare = false
        logallrefupdates = true
[remote "origin"]
        url = http://www.github.com/######/Random-Python-Tests
        fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
        remote = origin
        merge = refs/heads/master
[user]
        name = #####
        email = ############
当我克隆存储库时,我一直在"忍受"Github总是询问我的用户名和密码.我想绕过这一步,因为这是我工作流程中的一个烦恼.
我尝试使用本指南设置SSH密钥(我成功完成了).https://help.github.com/articles/generating-ssh-keys我成功了.
我的问题是,在克隆存储库时(使用SSH),我仍然被要求输入我的github密码和密码.我的理解是,在设置了这个SSH密钥后,我不再需要这样做了.
我有点不确定要问什么,所以我只是陈述我的目标.
我希望能够克隆存储库而无需一直输入我的Github信息.
我的SSH密钥丢失了什么?如果有人可以提供一些指导或资源,我会很感激,因为在GitHub中进行SSH身份验证时,我总是感到有些失落.
据我所知,这是一个测试事情是否正常工作的命令,这是我控制台的输出:
~ $ ssh -T git@github.com
Saving password to keychain failed
Enter passphrase for key '/Users/MYNAME/.ssh/id_rsa':
Hi MYNAME! You've successfully authenticated, but GitHub does not provide shell access.
当我输入密码时,首先应该失败吗?然后,当我输入我的密码时,它会通过.
我使用puttygen生成了一个OpenSSH私钥(并以OpenSSH格式导出).如何在现有密钥上设置密码(我知道如何使用密码生成新密钥)?
我不久前在GitHub上设置了2 因素身份验证。因此,一旦我在命令行中工作并想推送到我的存储库。我输入了用户名和密码,但失败并出现如下错误
USERNAME@MYCOMPUTER:~/MyRepo$ git push
Username for 'https://github.com': GitHubUsername
Password for 'https://GitHubUsername@github.com': GitHubPassword 
remote: Invalid username or password.
fatal: Authentication failed for ' 
https://github.com/GitHubUsername/MyRepo/'
因此,我阅读了这篇文章并得到了解决方案,我必须生成个人访问令牌才能推送任何内容。很好,但我认为这是一个有点困难的过程,因为首先我不记得大量的令牌,其次在文本文件中存储访问密钥并不是一件安全的事情。
因此,如果有人能够提供一个简单的解决方案来推送到我的存储库而不禁用 2FA,那就太好了。- 谢谢!