我使用的是 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(即不要求我输入密码)?

谢谢, - 戴夫

最佳答案

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

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

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

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

关于windows - 为什么 git 要求我输入密码?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8902554/

10-14 15:45
查看更多