【问题标题】:Windows 7. Git public key configurationWindows 7. Git 公钥配置
【发布时间】:2012-04-23 05:58:50
【问题描述】:

我已按照此处的说明:http://help.github.com/win-set-up-git/ 在我的 Windows 7 机器上设置 git。

我可以使用“git bash”并运行命令。系统提示我输入密钥的密码并且可以成功连接。例如:

$git push -u origin master
Enter passphrase for key '/c/Users/mbj/.ssh/id_rsa':
Everything up-to-date

还有这个:

$ ssh -T git@github.com
Enter passphrase for key '/c/Users/mbj/.ssh/id_rsa':
Hi markbrenigjones! You've successfully authenticated, but GitHub does not provi
de shell access.

$ which ssh
/bin/ssh

但是,当我打开常规的 Windows 命令提示符并运行相同的命令时,我得到了:

C:\util\meta_vimrc>git push
Permission denied (publickey).
fatal: The remote end hung up unexpectedly

还有这个:

C:\util\meta_vimrc>ssh -T git@github.com
Permission denied (publickey).

C:\util\meta_vimrc>which ssh
C:\Program Files (x86)\Git\bin\ssh.exe

我如何从非“git bash”提示符下让它工作?

【问题讨论】:

  • 确保您的公钥/私钥对位于 .ssh 目录中,在我的情况下为 C:\Users\Hunter\.ssh
  • 谢谢 Hunter,我在 C:\Users\mbj\.ssh 中有一个 id_rsa 和 id_rsa.pub 文件

标签: windows git windows-7 github ssh-keys


【解决方案1】:

当从 Windows cmd.exe 解释器运行时,程序可能不知道您的 HOME 目录在哪里。为此,必须找到带有您的密钥的 ssh 配置目录,即/c/Users/mbj/.ssh

通过运行设置:

set HOME=C:\Users\mbj\

【讨论】:

  • 这是一个环境变量吗?我有这个:\n C:\Users\mbj\.ssh>set HOME \n HOMEDRIVE=C:\n HOMEPATH=\Users\mbj \n
  • 需要运行:set HOME=C:\Users\mbj\
【解决方案2】:

对我有用的是运行 PuTTY 的 Pageant.exe 并将您的私钥添加到其中。然后 plink.exe 无论如何都知道在哪里找到密钥。

【讨论】:

  • 我需要一直运行它吗?它在启动时运行吗?
  • 刚刚尝试过 - 选美返回“无法加载此密钥(OpenSSH SSH-2 私钥)。抱歉,我对 SSH 密钥不太熟悉
  • 是的——我们的想法是一直运行它。您可能需要先使用 puttygen.exe 将密钥导出/导入为 putty 的 .ppk 密钥格式。
  • 试过了,没用。我正在运行 pageant.exe,它加载了我添加到 github.com 的公钥
  • 不要使用 Pageant,通往 Git Ruin™ 的道路上布满了 PuTTY
猜你喜欢
  • 2011-01-08
  • 1970-01-01
  • 2012-08-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-02-07
  • 2017-09-29
相关资源
最近更新 更多