Windows 7 如何隔离msysgit附带的msys实现中提供的ssh add/ssh代理的问题?

Windows 7 如何隔离msysgit附带的msys实现中提供的ssh add/ssh代理的问题?,windows-7,msysgit,msys,ssh-agent,Windows 7,Msysgit,Msys,Ssh Agent,我已经从安装了msysgit:Git-1.7.8-preview20111206.exe(编辑:我还安装了msysgit-fullinstall-1.7.8-preview20111206.exe,它可以方便地安装到不同的目录中,我发现该实例存在相同的问题) 我对ssh代理有一个问题,ssh add总是报告:“无法打开到您的身份验证代理的连接。” 不幸的是,ssh-add没有给我任何关于它遇到的错误的详细信息。当它尝试连接到套接字时,感觉好像超时了,但实际上它并不承认这是问题所在,ssh代理的行

我已经从安装了msysgit:Git-1.7.8-preview20111206.exe(编辑:我还安装了msysgit-fullinstall-1.7.8-preview20111206.exe,它可以方便地安装到不同的目录中,我发现该实例存在相同的问题)

我对ssh代理有一个问题,ssh add总是报告:“无法打开到您的身份验证代理的连接。”

不幸的是,ssh-add没有给我任何关于它遇到的错误的详细信息。当它尝试连接到套接字时,感觉好像超时了,但实际上它并不承认这是问题所在,ssh代理的行为就像它正常运行一样。考虑到这种组合会让我怀疑权限问题,但我不知道我会在哪里调查这种问题(而且我在windows事件日志中没有看到任何我认为重要的东西)

这个错误消息让我困惑:我有理由相信,如果我的环境变量设置不正确,我可以得到这个错误消息,但我有理由相信我的环境变量设置正确。我有理由相信,如果我的环境变量引用一个未运行的ssh代理实例,我可能会收到此错误消息,但我正好有一个ssh代理实例正在运行,并且它与我在环境变量中看到的匹配。这是可以重复的。我已经启动(并最终关闭)了数十个ssh代理实例,使用了
ssh-agent>~/.ssh/environment;~/。ssh/environment
,以及
eval`ssh-agent`
ssh-agent-bash
等等。。。我无法让msys ssh add连接到msys ssh代理

bash-3.1$ ps | grep ssh-agent
    10304       1   10304      10304    ?  500 09:01:24 /bin/ssh-agent
bash-3.1$ bash -c 'set | grep SSH_A'
BASH_EXECUTION_STRING='set | grep SSH_A'
SSH_AGENT_PID=10304
SSH_AUTH_SOCK=/tmp/ssh-oAFwa11048/agent.11048
bash-3.1$ time ssh-add -L
Could not open a connection to your authentication agent.

real    0m10.730s
user    0m0.000s
sys     0m0.015s
bash-3.1$ wc /tmp/ssh-oAFwa11048/agent.11048
      0       3      52 /tmp/ssh-oAFwa11048/agent.11048
bash-3.1$ cat /tmp/ssh-oAFwa11048/agent.11048; echo
!<socket >59261 060A4541-9831B739-519220DE-57936738
bash-3.1$
bash-3.1$ps | grepsh代理
10304       1   10304      10304    ?  500 09:01:24/bin/ssh代理
bash-3.1$bash-c“set | grep SSH_A”
BASH_EXECUTION_STRING='set | grep SSH_A'
SSH\u代理\u PID=10304
SSH_AUTH_SOCK=/tmp/SSH-oafwa1108/agent.11048
bash-3.1$time ssh add-L
无法打开与身份验证代理的连接。
实际0m10.730s
用户0.000s
系统0m0.015s
bash-3.1$wc/tmp/ssh-oAFwa11048/agent.11048
0 3 52/tmp/ssh-oAFwa11048/agent.11048
bash-3.1$cat/tmp/ssh-oAFwa11048/agent.11048;回声
!59261060A4541-9831B739-519220DE-57936738
bash-3.1$
我不关心任何脚本编写,只是现在--我相信如果我可以从命令行获得ssh add工作,我就可以编写脚本

还要注意,ssh add使用的10秒实时时间发生在它发出“无法打开…”消息之前

在这里,我使用的是最新版本的Windows7。而且,我也安装了cygwin,但当我使用msys时,它不在我的路径中。任务管理器告诉我,我只有一个ssh代理实例在运行。正在运行的ssh代理是msys ssh代理,它是从msysgit的bash提示符启动的(路径中没有来自cygwin的任何内容)。ssh密钥是使用cygwin的ssh-keygen生成的,但是表面测试表明msys-ssh实用程序对该文件没有问题。ssh代理不会给我任何错误消息或警告

我可以使用cygwin的ssh代理,但混合使用cygwin和msys会带来其他复杂性(您可以从我对这个问题的描述中看到其中的一些复杂性),我正在尝试让msys在没有cygwin的情况下工作


我需要做什么来找出msys ssh add无法工作的原因?(或者:我需要做些什么才能让ssh添加正常工作?

我不能告诉您很多原因和方法,但我可以告诉您我尝试了什么以及最终解决了什么问题。 在git bash中:

exec ssh-agent bash
然后(在已更改的shell中):

在某种程度上,我只需要输入一次密码,但我失去了正常的外观。在进一步搜索之后,我在上找到了一个.bashrc脚本

ssh-add