我在 D:/keys folder
中保存了一个SSH密钥。我想将其添加到我的git bash中。我找到的所有教程都是关于如何使用gitbash生成SSH密钥并加载到github/gitlab中。我使用puttygen生成了SSH密钥。现在我想将其添加到我的git bash中,以便我可以从远程克隆存储库。我该怎么做?
在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
我认为gitbash本身没有任何特定的配置。您需要将密钥放在默认位置~\.ssh/id_rsa
,然后它就会被使用。如果您需要将它放在其他地方,可以像在Linux上一样使用配置文件~/.ssh/config
。
host example.com
HostName example.com
IdentityFile ~/.ssh/id_rsa
User git
别忘了设置权限 chmod 400 ~/.ssh/id_rsa
D:/keys folder/myprivatekey
,而你的Git安装在D:/Git
中(其中有二进制文件git-bash.exe
),打开文件D:/Git/etc/ssh/ssh_config
。只需在文件中添加一行并保存即可:...
# StrictHostKeyChecking ask
# IdentityFile ~/.ssh/id_rsa
# IdentityFile ~/.ssh/id_dsa
# IdentityFile ~/.ssh/id_ecdsa
# IdentityFile ~/.ssh/id_ed25519
# Port 22
...
这样就已经添加了密钥。...
# StrictHostKeyChecking ask
IdentityFile "D:/keys folder/myprivatekey"
# IdentityFile ~/.ssh/id_rsa
# IdentityFile ~/.ssh/id_dsa
# IdentityFile ~/.ssh/id_ecdsa
# IdentityFile ~/.ssh/id_ed25519
# Port 22
...
我能够使用Auto-launching ssh-agent on Git for Windows脚本使得密码短语仅在启动后打开的第一个窗口上提示。但是我发现,当我将其添加到~/.profile
或~/.bashrc
中时,它并不起作用。我需要将其添加到~/.bash_profile
才能被Windows上的Git Bash识别和使用。
.bashrc
文件中? - John Doe