5

我正在使用在 Windows 8.1 上运行ConEmu的cmder 。

它具有内置的 Git 功能,因此我可以在控制台中拉/推 git 存储库(就像在 Linux 控制台上一样)

为了进行身份验证,我使用受密码保护的 SSH 私钥。如果我git push使用 ConEmu,它每次都会提示我输入密钥密码。我可以键入“start-ssh-agent”并输入我的密码一次,它将在该 ConEmu 窗口中自动验证我,但是如果我关闭或打开另一个窗口,我需要再次运行该命令。

如何启动一个 ssh-agent 来在每个 ConEmu 窗口中验证我的密钥?

4

1 回答 1

5

在Cmder启动期间添加了以下SSH 密钥,并且每个会话只输入一次密码:

@echo off
ssh-agent | grep -v echo | sed -e "s/^/@set /" | sed -e "s/;.*$//" - > call.cmd
call call.cmd
del call.cmd
ssh-add "%HOME%\.ssh\id_rsa"
@echo on

将代码添加到cmder/config/user-profile.cmd当前 Cmder 版本或cmder/vendor/init.bat旧版本中。

编辑: 较新版本的 cmder 在user-profile.cmd其中使用 git 具有以下几行:

:: uncomment this to have the ssh agent load when cmder starts
call "%GIT_INSTALL_ROOT%/cmd/start-ssh-agent.cmd"
于 2015-12-11T22:01:53.237 回答