几周前我开始了一个 github 项目。我能够毫无问题地推动更改(我正在使用 TortoiseGIT)。
今天突然间,当我尝试推送更改时,出现“PuTTY 致命错误”“已断开连接:没有可用的支持的身份验证方法”错误窗口。
您有什么可以解决问题的建议吗?
几周前我开始了一个 github 项目。我能够毫无问题地推动更改(我正在使用 TortoiseGIT)。
今天突然间,当我尝试推送更改时,出现“PuTTY 致命错误”“已断开连接:没有可用的支持的身份验证方法”错误窗口。
您有什么可以解决问题的建议吗?
对我来说,只有在使用 TortoiseGit 时才对远程存储库执行操作是有问题的,通过CMD / GitBash根本没有问题。
所以我所做的非常简单: 我打开TortoiseGit --> Settings --> Network并在 SSH Client 中更改为“C:\Program Files\Git\usr\bin\ssh.exe”而不是“TortoiseGitPlink.exe” .
确保使用 OpenSSH 安装TortoiseGit并且使用SSH 身份验证方法。如果您使用 Putty 安装,系统托盘中可能会有一个名为“Putty Pageant”的“计算机符号”。
对于 Windows 上的 TortoiseGit 用户
(正如我最初在这个问题中发布的那样)
我曾经使用SSH 存储库 URL来设置我的大部分 Github/Bitbucket 存储库,因为(最初)它曾经是防止 TortoiseGit 在每次操作时提示您输入密码的唯一便捷方法。
但是以这种方式设置 TortoiseGit 总是令人毛骨悚然。每次我都需要几个小时才能正确设置,因为默认安装选项似乎从来没有工作过(即使到 2016 年,天哪!)。
但是 TortoiseGit 现在对 HTTPS 有更好的密码管理,而且Github 实际上建议尽可能使用 HTTPS URL。
SSH 网址:
git@github.com:User/repo-name.git
HTTPS 网址:
https://github.com/User/repo-name.git
HTTPS 的好处是:
pageant.exe
不断运行(每次启动时都会要求您输入密码)通过将私钥添加到 Pageant 中,我能够修复此错误。我在创建密钥的过程中忘记了这样做,一旦我添加了它,我就不再收到错误了。
为了解决这个问题,我不得不从开始菜单手动运行 Pageant:
之后,我在系统托盘中看到了选美:
我可以添加我的密钥。通常,键在%userprofile%\.ssh
.
就我而言,Tortoise Git 丢失了 PuttyKey。所以我不得不去 TortoiseGit设置 > Git > 远程 ,在这个部分我点击远程框架我的原点和 PuttyK 键没有设置(以前)。我不得不重新设置它。
我想通了——它的发生是因为自从开始从事该项目以来,我重新安装了 TortoiseGIT。拉取进展顺利,但是当我试图推回我的更改时,TortoiseGIT 需要我的身份验证密钥,该密钥未配置。
编辑
为了解决这个问题,我只是从我的 TortoiseGit 中清除了所有身份验证数据,位于:上下文菜单“Tortoise Git” -> 设置 -> 保存的数据 -> 身份验证数据 [清除]
对我来说,将 GIT 升级到 2.8.0 后出现此错误。问题是由于 $HOME 目录被 bash 错误读取并默认为 Windows 安装文件夹下的某个系统位置:/c/Windows/system32/config/systemprofile
.
事实证明,需要进行一些环境变量清理。很久以前,我安装了一个 GIT 版本(大约 1.7.x),它在系统环境变量中创建了一个 HOME 变量。由于行为发生了一些变化,因此需要在升级到 2.8.0 后将其删除,而不是添加进一步的 HOME 用户环境变量。
[WINDOWS] [在 TORTOISE SVN 之后安装的 GIT (1)
同样的问题] (1)不是 TortoiseGit,而是 Git 开发社区版本。
在 git bash 中:
echo $GIT_SSH
在给
GIT_SSH=C:\Program Files\TortoiseSVN\bin\TortoisePlink.exe
(感谢上面的 Răzvan Flavius Panda 和 Shahar Hamuzim Rajuan )。
我不得不将Windows 系统环境变量中 GIT_SSH 的值从
from C:\Program Files\TortoiseSVN\bin\TortoisePlink.exe
to C:\Program Files\Git\usr\bin\ssh.exe
(之前,我在 git bash 中成功尝试输入:
export GIT_SSH='C:\Program Files\Git\usr\bin\ssh.exe'
所以我们可以在 C:\Program Files\Git\etc\bash.bashrc 中添加这一行,以使更改永久生效。请注意,在 C:\Program Files\Git\setup.ini 中修改 GIT_SSH 失败)
就我而言,当我取消选中并检查 AutoloadPutty 键时,它得到了解决。
在这里查看我的帖子。我刚才遇到了这个问题,并尝试了这里发布的所有内容,但我无法解决它。最后是与现有 PuTTy 配置相关的完全相同的问题 => [ TortoiseSVN 不断询问我的密码
我遇到了同样的错误,这是在成功推送到我的存储库数月后随机发生的。就我而言,在Tortoisegit->Settings->Git->Remote中,Push URL字段不知何故为空。
作为一个新用户,我在创建新项目时遇到了与 GitLab 和 Eclipse 相同的错误。作为一名学生,我使用不同的 PC 并且我的密钥有问题,但我认为它已经解决了,因为我创建了一个新的干净集并且我的上一个项目运行良好。不幸的是,错误再次发生在一个新项目上。
我发现创建一个新的 Eclipse 项目默认为我的 ssh 目录,而不是我在当前项目中使用的 .ssh。我最初使用 ssh 目录,但在问题更改为 .ssh 后使用新密钥。
在 Window > Preferences > General > Network Connections > SSH2 中更改为 .ssh 解决了该问题。
我发布此消息是因为我花了很多时间寻求有关我的密钥的帮助,但没有找到与我的问题相关的任何内容。
我改为C:\Program Files\Git\usr\bin\ssh.exe
代替TortoiseGitPlink.exe
并保存。并将其改回TortoiseGitPlink.exe
并解决了此错误。
确保在克隆时选中“加载腻子键”复选框,如果未选中,则会给出相同的错误
对我来说,我必须将我的“msysgit”版本更新到 1.7.10+ 版本。完成后,我没有遇到上述错误。我认为您可能需要检查是否安装了msysgit,如果没有安装它。