gpt4 book ai didi

ssh - 带有 openssh key 的 TortoiseGit 未使用 ssh-agent 进行身份验证

转载 作者:行者123 更新时间:2023-12-02 01:50:53 26 4
gpt4 key购买 nike

我正在 Windows XP 上设置 git 环境(msysGit 1.7.11、TortoiseGit 1.7.14)并尝试实现以下几点:

  • 使用不同于默认端口 22 的 ssh 连接
  • ssh 身份验证由 ssh-agent 处理

所以我创建了一个~/.ssh/config文件:

Host gitbox
User gitolite
Hostname XX.XX.XX.XX
Port 154
PreferredAuthentications publickey
IdentityFile "/c/Documents and Settings/kraymer/.ssh/id_rsa"

使用 git bash CLI 时,一切都按预期运行。

我正在与 TortoiseGit 作斗争。
我首先使用 Plink 安装了 TortoiseGit 并使用 Pageant 加载 ssh 私钥。自动身份验证(Pageant)有效,但设置失败,因为 TortoiseGit 无法识别格式为 gitolite@gitbox/repo.git 的 git repos url。

然后我决定使用 openssh 客户端安装 TortoiseGit,以便 ssh 客户端可以读取配置文件,并模仿 git CLI 设置。
我在 TortoiseGit 设置中选择了 msys git 附带的 ssh.exe 作为 ssh 客户端。
当执行 git pull 时,远程 URL 现在已解析,但在我期望 ssh-agent 自动身份验证发生时会询问密码。

https://dl.dropbox.com/u/1026715/tortoisegit.png

是否可以使 TortoiseGit 与 ssh-agent 一起工作?
或者让 TortoiseGit (Plink) 知道 .ssh/config

编辑#1

按照@VonC的建议,我配置了我的$HOME变量。
当我在 TortoiseGit 中单击显示环境变量时,我现在拥有:

 HOME=C:\Documents and Settings\kraymer  
HOMEDRIVE=C:
HOMEPATH=\Documents and Settings\kraymer

但是git pull仍然要求我输入密码。

最佳答案

无需调整。

只需让 TortoiseGit 指向 git 本身使用的同一个 ssh 客户端即可,请参见屏幕截图:

enter image description here

正如 Aleksey Kontsevich 在评论中提到的,在最新版本的 Git 中,这应该是 C:\Program Files\Git\usr\bin\ssh.exe

关于ssh - 带有 openssh key 的 TortoiseGit 未使用 ssh-agent 进行身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13516119/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com