TortoiseGit 拉取代码提示:No supported authentication methods available
使用 TortoiseGit和远程代码仓库进行代码同步时,提示如下错误,但通过GitBash却可以正常同步到代码。
分析原因
TortoiseGit远程仓库的公钥无法和本地的密钥进行匹配,导致认证失败(即:TortoiseGit缺少本地密钥)。
TortoiseGit的默认网络SSH Client是TortoiseGitPlink.exe,如下图所示:
解决方案
- 不修改
TortoiseGit的默认网络SSH Client,为TortoiseGit添加对应的本地密钥(.ppk后缀); - 修改
TortoiseGit的默认网络SSH Client,使其与GitBash的SSH相同,即使用和GitBash相同的密钥;
修改TortoiseGit本地密钥
- 由于
TortoiseGit默认是通过TortoiseGitPlink.exe来进行公匙和密匙配对,因此它只能识别后缀为.ppk的密匙;如何生成本地密钥.ppk文件?? - 该方式是通过
Pageant来添加后缀为.ppk的密匙,因此首先打开Pageant,如下图
- 双击打开
Pageant,在右下角,点击查看配置的Keys:
- 点击
Add Key,添加本地密钥即可
修改TortoiseGit的默认网络SSH Client
- 选择
ssh.exe后,点击应用,保存配置 - 重新通过
TortoiseGit同步远程仓库代码,即可成功拉去最新代码