git push origin master:错误:已断开连接:没有可用的支持的身份验证方法

时间:2011-07-20 07:23:20

标签: git github

我在这里已经非常彻底地阅读了GitHub的问题,但找不到我的问题的线索。我已经创建了新的git repo,现在我正试图将它推送到GitHub:

git remote add origin git@github.com:clergyman/first_app.git
git push origin master

我明白了:

FATAL ERROR: Disconnected: No supported authentication methods available
fatal: The remote end hung up unexpectedly

ssh git@github.com工作正常 我在32位Windows 7上运行 GitHub全局设置也很好。有什么想法吗?

6 个答案:

答案 0 :(得分:7)

当我选择plink.exe来执行身份验证时,这是我的步骤

  1. 使用“puttygen.exe”生成公钥和私钥,并将私钥保存为putty私钥文件格式(filename.ppk)。
  2. 将“puttygen.exe”中生成的公钥粘贴到github帐户设置中。
  3. 启动pageant.exe(Putty Authentication Agent),并添加在步骤1中生成的私钥。

答案 1 :(得分:6)

我遇到了同样的错误消息,试图让Git,Git Extensions和GitHub使用64位Windows 7.我能够在继续使用Putty的同时解决问题。

我在 C:\ Users \ MyUserName 中创建了一个 .profile 文件,其中包含以下内容:

GIT_SSH="/c/Program Files (x86)/Git/bin/ssh.exe"

必须在git bash中使用“touch .profile”来创建文件,因为Windows GUI会惩罚你尝试创建以句点开头的文件。

不能信用。我只是对提供的答案here进行了旋转。

答案 2 :(得分:5)

该解决方案以某种方式将git的默认ssh客户端从pegeant更改为openSsh。例如。重新安装git并检查相应窗口中的openSSH(不是pegeant或其他东西),如果你刚刚安装了git并且还没有开始工作。

答案 3 :(得分:2)

"No supported authentication methods available" on GitHub部分可以提供帮助吗?

  

你应该知道环境变量GIT_SSH,如果ssh对你不起作用,git会使用它来查找你说ssh的客户端。
  git install可能正在使用plink.exe(通过GIT_SSH)来执行身份验证   如果是这样,请确保运行pageant.exe,并为github创建的密钥加载到其中。这为plink.exe提供了关键;没有它,会发生上述错误。

     

请参阅this post进行更长时间的讨论。

答案 4 :(得分:0)

您是否在github上正确设置了ssh密钥?

您需要创建一个ssh密钥,并将您的公钥放在github上。两个顶级参考是

http://help.github.com/mac-set-up-git/

http://help.github.com/ssh-issues/

答案 5 :(得分:0)

我的同事今天使用TortoiseGit突然出现了这个错误。他无意中将他的Putty私钥文件(myprivatekey.ppk)移到另一个文件夹中。因此,请确保私钥文件的路径正确无误。在TortoiseGit中,转到设置... Git ...远程。请参见下面的屏幕截图:

enter image description here