git 克隆适用于 git shell,但不适用于 windows 命令行

git clone works in git shell, but not windows command line

我已经在 windows 机器上安装了 Github 客户端工具。如果我尝试使用 git shell 中的 git 它工作正常。但是,如果我尝试从 windows 命令行使用它,它会失败:

c:\git\test>git clone git@github.com:myusername/myrepo.git
Cloning into 'myrepo'...
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

我只想使用 git shell,但我需要将命令行设置为与 Bower 一起使用。还需要设置什么才能使 git 正常工作?

我使用的 windows 机器上没有设置 SSH,因此唯一设置的 SSH 密钥是由 github 安装程序设置的。在我的 .ssh 目录中,我有一个 github_rsa 和 github_rsa.pub 文件,但没有 id_rsa 和 id_rsa.pub 的默认 ssh 密钥。 Github 客户端(shell 和 GUI)在与 github.com 交谈时会使用 github_rsa(.pub) 组合键,但是 git 运行 在标准 windows 命令行中需要 id_rsa(.pub) 组合。

为了解决这个问题,我简单地复制了一个 github_rsa 私钥,并为其指定了默认名称 "id_rsa"。同样,我将 github_rsa.pub 键复制到 "id_rsa.pub"。这样做后,git.exe 也可以从 windows 命令行运行。