为什么git要我输入密码?

时间:2012-01-17 22:21:29

标签: windows git putty tortoisegit

我使用的是Windows XP,TortoiseGit(最新版本)和Cygwin。我安装了git.exe并在我的路径上。在TortoiseGit中,我可以在不提示输入密码的情况下对远程存储库执行推送。我认为这是因为我已经在我的.git / config文件中定义了这个...

[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推送而不是从TortoiseGit推送时我会提示输入密码?如何让Cygwin表现得像TortoiseGit(即不要求我输入密码)?

谢谢, - 戴夫

1 个答案:

答案 0 :(得分:2)

puttykeyfile是一个Windows git的东西,所以你需要为cygwin设置你的SSH。 Git将使用您的常规SSH设置。

.ppk文件是否是常规SSH公钥?如果是这样,请将以下内容添加到~/.ssh/config文件中,以便cygwin git知道在哪里找到它。

 Host myrepo
     IdentityFile /cygdrive/u/.ssh/mykey.ppk

您可以使用cygwin中的ssh myrepo快速测试。