![为什么我不能使用 OpenSSH 安装适用于 Windows 的 Git?](https://linux22.com/image/1373289/%E4%B8%BA%E4%BB%80%E4%B9%88%E6%88%91%E4%B8%8D%E8%83%BD%E4%BD%BF%E7%94%A8%20OpenSSH%20%E5%AE%89%E8%A3%85%E9%80%82%E7%94%A8%E4%BA%8E%20Windows%20%E7%9A%84%20Git%EF%BC%9F.png)
每当我尝试使用从此处下载的安装程序为 Windows 安装 Git 时,安装似乎都会跳过我为 Git 配置安全 Shell 客户端的步骤。
通常在安装过程中,会显示一个屏幕,提示用户选择 OpenSSH(与 Git 一起安装)或 PuTTY PLink(默认选项)。在我最近的几次安装中,找不到这个屏幕。相反,Git 似乎被默默配置为使用 PLink,而无需我输入任何信息。
谁能告诉我为什么会发生这种情况?
如果我无法选择在安装时使用哪个 SSH 客户端,有人能告诉我如何重新配置 Git 以指向 OpenSSH 而不是 TortoisePLink 吗?
这似乎是由 Git 环境变量控制的(我的读取内容是“GIT_SSH=c:\Program Files\Putty\plink.exe”,而不是在另一台运行 Git 的 PC 上读取的“GIT_SSH=ssh.exe”)。
作为一种解决方法,有人知道如何改变这个变量吗?
答案1
我以前也遇到过这种情况。要切换到 OpenSSH 还需要做很多工作。
编辑
C:\Program Files (x86)\Git\setup.ini
并删除以下行(如果它们在文件中):GIT_SSH=C:\Program Files (x86)\PuTTY\plink.exe SVN_SSH=C:\Program Files (x86)\PuTTY\plink.exe
编辑
C:\Program Files (x86)\Git\etc\profile
并删除该行export PLINK_PROTOCOL=ssh
确保您拥有 SSH 私钥文件。文件采用 OpenSSH 格式,而非 PuTTY 私钥格式
.ppk
。.ssh
为 Git 用户创建一个目录并将id_rsa
文件复制到那里。md c:\Users\Git_User\.ssh
打开 DOS 命令窗口并输入命令
set | more
寻找
GIT_SSH
并SVN_SSH
如果找到,则表明它已在 Windows 环境变量中配置。您需要从那里将其删除。
从“开始”菜单打开“控制面板”
- 选择用户帐户
- 选择更改我的环境变量
- 强调GIT_SSH ...
- 点击Delete
- 点击OK
对 SVN_SSH 重复此操作。
在我的计算机上,执行这些操作会禁用 TortoiseGit。最好修复您的 Git 配置以使用。目录中TortoiseGitPlink.exe
还有一个- 不要使用它。对我来说不起作用。TortoisePlink.exe
TortoiseGit/bin
TortoisePlink.exe
答案2
我今晚刚刚遇到这个问题,上次发帖人提供的信息已经过时了 - 但它把我带到了正确的地方 - 基本上隐藏了系统中有关 putty/plink 的任何概念,不让 git 安装程序介入。
Git 注意到 plink 已安装并不断尝试“提供帮助”,但拒绝安装 openssh。
- 卸载 Git。
- 删除剩余结构 c:\program files\git。
- 转到您的 USER 注册表项 HKEY_CURRENT_USER\Software\SimonTatham
- 暂时将密钥重命名为类似 SSSSimonTatham 的名称(以“S”开头,这样它就不会对您进行排序,您以后可以快速找到它)
- 现在安装 Git。(它不会注意到你已经安装了 plink)
- 确保将 ssh.exe(现已安装)添加到您的路径中
- 对我来说它是 C:\Program Files\Git\usr\bin
- 将您的 putty 注册表项重命名回 SimonTatham