永久添加SSH密钥

时间:2017-10-10 08:02:34

标签: git bash ssh

要访问我的远程git,每次推或拉时都会添加对SSH的引用:

GIT_SSH_COMMAND="ssh -i ~/.ssh/id_bit_rsa" git pull origin master

有没有办法让git记住SSH所以我不需要每次都添加它?

3 个答案:

答案 0 :(得分:4)

好的,刚刚在github manual找到答案。

eval "$(ssh-agent -s)"

$ ssh-add -K ~/.ssh/id_bit_rsa

答案 1 :(得分:4)

Git并不关心你的SSH密钥。在场景后面调用ssh。如果设置了环境变量GIT_SSH_COMMAND,那么它不会使用ssh,而是使用GIT_SSH_COMMAND变量的内容。

使其永久化的一个选择是写:

export GIT_SSH_COMMAND="ssh -i ~/.ssh/id_bit_rsa"

在您的.profile(或.bash_profile)中,但如果您使用多个远程主机,则弊大于利。

解决问题的正确方法是正确配置ssh。编辑文件~/.ssh/config(如果文件不存在则创建文件)并放入其中:

Host bitbucket.com
User guy
IdentityFile = ~/.ssh/id_bit_rsa

当然,将bitbucket.com替换为托管您的Git仓库的服务器的实际名称(我从" &#34猜测BitBucket;您的密钥的一部分文件)和guy在主持人身上带有你的名字。

答案 2 :(得分:3)

你可以这样做:

Host github
HostName github.com
User git
IdentityFile ~/.ssh/id_github

(根据需要替换用户和主机名,以及身份文件)

~/.ssh/config

中的