我正在尝试配置Git以使用Plink。之前它曾多次为我工作过。现在,出于某种原因,我无法使用此选项(已禁用):
我尝试卸载并重新安装Git一百次。没有。我无法启用此选项。
答案 0 :(得分:56)
我刚遇到这个问题(使用较新版本的Git,1.7.9)。我使用了VonC的答案,但只需要几个步骤:
GIT_SSH
设置为plink.exe
pagent.exe
并加载您的私钥在64位Windows上,plink的默认位置为C:\Program Files (x86)\GitExtensions\PuTTY\plink.exe
路径中的空间似乎不再是一个问题。
答案 1 :(得分:43)
这是一个老问题,我也有同样的问题,只是为了确保我会写下对我有用的解决方案。
msysgit安装程序未显示允许在openssh客户端和Tortoise(plink)之间进行选择的屏幕
解决方案是安装Putty(或者我猜想是Tortoise Plink),创建并保存至少一个会话,只是安装Putty不起作用,必须创建会话,安装程序会做一些奇怪的检查
再次运行Git安装程序时,屏幕应该会出现。
答案 2 :(得分:18)
这看起来像issue 368
当我更新安装时,从未询问我是否要使用PLink 现在Git继续寻找OpenSSH密钥。 Git找不到我的腻子钥匙。
我尝试加载我的putty私钥并重新安装Git。无论我做什么,我都无法让Git使用我的putty plink数据和私钥。
这有一个解决方法(issue 367)
1)确保plink在
PATH
中 2)保存一个腻子会话的设置(无关紧要)并在安装git之前执行这些操作。
即使有这个过程,也不容易:
我终于能够让GIT与Plink合作。
一条评论:
我在安装GIT之前确实开始了Plink会话。即使Plink会话正在运行,我也无法让安装程序识别PLink正在运行。我的工作:
- 我终于安装了GIT 1.6.5.1。
- 我更改了Plink路径以删除空格。我改变了目录:
c:\program files\putty
至c:\putty
。- 我将环境变量
醇>GIT_SSH
设置为新路径。c:\putty\plink.exe
。通过这些更改,GIT现在正常运行。
Janusz Skonieczny添加in the comments:
要设置此功能,请以管理员身份快速运行PowerShell:
[Environment]::SetEnvironmentVariable("GIT_SSH", "D:\your_path_here\plink.exe", "User")
2017年3月更新,Git 2.13(2017年第2季度)
Git现在会自动检测您需要的ssh(openssh或plink),但您可以使用ss.variant
强制进行检测。
commit dd33e07(2017年2月1日)和commit e9d9a8a(2017年1月2日)Segev Finer (segevfiner
)。
请commit e2824e4查看Johannes Schindelin (dscho
)(2017年2月1日)
请commit 6a4f3a9查看Junio C Hamano (gitster
)(2017年1月26日)
(Junio C Hamano -- gitster
--于2017年2月27日commit be6ab59合并)
ssh.variant:
根据环境变量
GIT_SSH
或GIT_SSH_COMMAND
的值或配置设置core.sshCommand
,Git会自动检测是否调整其命令行参数以用于{{ 1}}或plink
,而不是默认(OpenSSH)。配置变量
tortoiseplink
可以设置为覆盖此自动检测;
有效值为ssh.variant
,ssh
,plink
或putty
任何其他值将被视为正常ssh 可以通过环境变量tortoiseplink
覆盖此设置。
答案 3 :(得分:0)
如果您使用的是TortoiseGit,则可以永久配置其plink。当然,请在您的机器上使用正确的路径。
setx GIT_SSH "C:\Program Files\TortoiseGit\bin\TortoiseGitPlink.exe"
答案 4 :(得分:0)
我使用了带有GIT_SSH
环境变量的解决方案多年,但是今年某个时候它停止工作(在更新git bash或putty工具包之后)。我发现了当前的工作灵魂。首先,您的选美必须正在运行。其次,您必须启动ssh代理,但是Windows则启动:
eval `ssh-pageant`
与Windows等效,它相当于unix用户所知道的:
eval `ssh-agent`
要添加密钥,可以使用ssh-add
或Pagenant UI窗口。