我在 Windows XP(msysGit 1.7.11,TortoiseGit 1.7.14)上设置了一个 git 环境,并试图实现以下几点:
- 与默认 22 不同的端口上的 ssh 连接
- 由 ssh-agent 处理的 ssh 身份验证
所以我创建了一个~/.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 私钥。自动身份验证(选美)工作但设置失败,因为 TortoiseGit 无法识别格式为gitolite@gitbox/repo.git的 git repos url 。
然后我决定使用 openssh 客户端安装 TortoiseGit,以便ssh 客户端可以读取配置文件,并模仿 git CLI 设置。
我在 TortoiseGit 设置中选择了msys git 附带的 ssh.exe 作为 ssh 客户端。
执行 agit pull
时,远程 url 现在已解析,但在我希望 ssh-agent 自动身份验证发生时询问密码密码。
是否可以让 TortoiseGit 与 ssh-agent 一起使用?
或者让 TortoiseGit (Plink) 知道.ssh/config?
编辑#1
按照@VonC 的建议,我配置了我的 $HOME 变量。
当我在 TortoiseGit 中单击Show environment variables时,我现在有:
HOME=C:\Documents and Settings\kraymer
HOMEDRIVE=C:
HOMEPATH=\Documents and Settings\kraymer
但git pull
仍然需要我输入密码。