【问题标题】:Git on Windows: Force use of OpenSSH [closed]Windows 上的 Git:强制使用 OpenSSH [关闭]
【发布时间】:2013-10-23 02:18:26
【问题描述】:

我为 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 而无需重新安装?

【问题讨论】:

  • 我认为这属于Superuser
  • 我认为这是 StackOverflow 的一个有效问题。提到的 Git 和 SSH 工具肯定是software tools commonly used by programmers,甚至是a practical, answerable problem that is unique to software development(来自the help center)。

标签: windows git


【解决方案1】:

看来 git 抓住了这个

可能是因为putty.exe 在您的 %PATH% 中排在首位。

检查您的GIT_SSH environment variable

set GIT_SSH

如果要使用openssh,需要set it to git/bin/ssh.exe:

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

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

【讨论】:

  • 这个答案帮助我解决了相反的问题:我的 MINGW 安装尝试使用 ssh,但我希望它使用 Putty,所以我将 GIT_SSH 设置为 C:\Program Files (x86)\PuTTY\plink.exe 并且它有效。
猜你喜欢
  • 2019-09-10
  • 2018-09-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-05-30
  • 2012-02-18
  • 2011-02-15
  • 2020-08-14
相关资源
最近更新 更多