Windows 为什么git要我输入密码?
我使用的是Windows XP、Ortoisegit(最新版本)和Cygwin。我已经安装了git.exe,并且在我的路径上。在Ortoisegit中,我可以对远程存储库执行推送操作,而无需提示输入密码。我认为这是因为我在.git/config文件中定义了它Windows 为什么git要我输入密码?,windows,git,putty,tortoisegit,Windows,Git,Putty,Tortoisegit,我使用的是Windows XP、Ortoisegit(最新版本)和Cygwin。我已经安装了git.exe,并且在我的路径上。在Ortoisegit中,我可以对远程存储库执行推送操作,而无需提示输入密码。我认为这是因为我在.git/config文件中定义了它 [remote "origin"] fetch = +refs/heads/*:refs/remotes/origin/* url = ssh://git@myrepo/myproject.git puttykeyf
[remote "origin"]
fetch = +refs/heads/*:refs/remotes/origin/*
url = ssh://git@myrepo/myproject.git
puttykeyfile = U:\\.ssh\\mykey.ppk
然而,在Cygwin中,当我在项目的根目录下(其中.git文件夹是子目录)时,系统会提示我输入密码
$ git push origin qa_release
git@myrepo's password:
当我试图从Cygwin而不是从Ortoisegit推送时,为什么会提示我输入密码?我如何才能让Cygwin表现得像Ortoisegit(即,不要求我输入密码)
谢谢,-Dave
puttykeyfile
是一个windows git的东西,所以您也需要为cygwin设置SSH。Git将使用您的常规SSH设置
.ppk文件是常规SSH公钥吗?如果是这样,请将以下内容添加到~/.ssh/config
文件中,以便cygwin git知道在哪里可以找到它
Host myrepo
IdentityFile /cygdrive/u/.ssh/mykey.ppk
您可以使用cygwin中的
ssh-myrepo
快速测试这一点。这一方法的一个变体对我有效。在“主机”下,除了将标识文件从.ppk更改为私钥文件外,我还添加了“User myuser”和“Hostname myhost”行。谢谢,-顺便说一句,ppk不是SSH公钥。这是putty的私钥。