如何将已生成的SSH密钥添加到git bash?

时间:2019-09-11 06:32:08

标签: bash git ssh putty ssh-keys

我有一个保存在D:/keys folder中的SSH密钥。我想将其添加到我的git bash中。我发现的所有教程都是如何使用gitbash生成SSH密钥并将其加载到github / gitlab。我使用puttygen生成了SSH密钥。现在,我想将其添加到我的git bash中,以便可以从远程克隆存储库。我该怎么办?

3 个答案:

答案 0 :(得分:1)

我认为gitbash本身没有任何特定的配置。您必须将密钥放在默认位置~\.ssh/id_rsa中,它将被使用。如果需要在其他地方使用它,可以使用与Linux ~/.ssh/config

相同的配置文件来完成。
host example.com
 HostName example.com
 IdentityFile ~/.ssh/id_rsa
 User git

不要忘记设置权限chmod 400 ~/.ssh/id_rsa

答案 1 :(得分:1)

在Windows上,您可能需要像这样启动ssh代理

# start the ssh-agent in the background
$ eval $(ssh-agent -s)
> Agent pid 59566

将SSH私钥添加到ssh-agent。如果您使用其他名称创建密钥,或者要添加现有名称的其他密钥,请用私钥文件的名称替换命令中的id_rsa。

$ ssh-add <path/to/key>

从此处的“将SSH密钥添加到ssh-agent”中获得以下信息: https://help.github.com/en/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent#adding-your-ssh-key-to-the-ssh-agent

答案 2 :(得分:0)

假设您要导入到 git bash 的私钥文件是 D:/keys folder/myprivatekey 并且您的 Git 安装在 D:/Git(您将在该文件夹中看到二进制文件 git-bash.exe),打开文件 D:/Git/etc/ssh/ssh_config

以下是该文件中的一些文本:

<块引用>

...
# StrictHostKeyChecking 询问
# IdentityFile ~/.ssh/id_rsa
# IdentityFile ~/.ssh/id_dsa
# IdentityFile ~/.ssh/id_ecdsa
# IdentityFile ~/.ssh/id_ed25519
# 端口 22
...

只需添加一个新行并保存:

<块引用>

...
# StrictHostKeyChecking 询问
IdentityFile "D:/keys 文件夹/myprivatekey"
# IdentityFile ~/.ssh/id_rsa
# IdentityFile ~/.ssh/id_dsa
# IdentityFile ~/.ssh/id_ecdsa
# IdentityFile ~/.ssh/id_ed25519
# 端口 22
...

并且密钥已经添加。