7

我为 Windows 安装了 git,当出现选择 Putty 或 OpenSSH 的选项时,我选择了 OpenSSH。但是,我确实安装了腻子,似乎 git 抓住了这一点并试图使用它。(我在环境变量中有 GIT_TRACE=2 )

E:\blah>git push
trace: built-in: git 'push'
trace: run_command: 'ssh' 'git@bitbucket.org' 'git-receive-pack '...
Enter passphrase for key 'C:\putty\my.ppk':

这真的很奇怪,因为 ppk 甚至没有密码。虽然真正的问题是它不应该使用 putty 键,但它应该使用 ~/.id_rsa

这在安装后立即工作,但在重新启动计算机后它开始这样做。

有没有办法告诉 git 使用 openssh 而不必重新安装它?

4

1 回答 1

6

似乎 git 抓住了这一点

也许是因为putty.exe在您的 %PATH% 中排在第一位。

检查您的GIT_SSH环境变量

set GIT_SSH

如果要使用 openssh,则需要将其设置为git/bin/ssh.exe

set GIT_SSH=C:\path\to\git\bin\ssh.exe

这应该确保 push 和 pull 命令查找 ~/id_rsa(.pub) 密钥,而不是请求 putty*.ppk私钥存储。

于 2013-10-23T06:36:24.877 回答