Git配置多个SSH-Key

生成 SSH-Key

生成一个码云用的 SSH-Key

ssh-keygen -t rsa -C '[email protected]' -f ~/.ssh/gitee_id_rsa

生成一个 github 用的 SSH-Key

ssh-keygen -t rsa -C '[email protected]' -f ~/.ssh/github_id_rsa

生成一个 gitlab 用的 SSH-Key

ssh-keygen -t rsa -C '[email protected]' -f ~/.ssh/gitlab_id_rsa
创建 config 文件

~/.ssh 目录下新建一个 config 文件,添加如下内容(其中 HostHostName 填写git服务器的域名,IdentityFile 指定私钥的路径)

# gitee
Host gitee.com
HostName gitee.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/gitee_id_rsa
# github
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/github_id_rsa
# gitlab
Host gitlab.shihuidodo.cn
HostName gitlab.shihuidodo.cn
PreferredAuthentications publickey
IdentityFile ~/.ssh/gitlab_id_rsa
添加公钥

添加 gitee_id_rsa.pub 公钥到码云

添加 github_id_rsa.pub 公钥到 github

添加 gitlab_id_rsa.pub 公钥到 gitlab

用ssh命令分别测试

用ssh命令测试 gitee

ssh -T [email protected]

输入 yes 回车

image.png

此时 ~/.ssh 目录下会生成 known_hosts 文件

image.png

用ssh命令测试 github

ssh -T [email protected]

输入 yes 回车

image.png

用ssh命令测试 gitlab

ssh -T [email protected]

输入 yes 回车

image.png

如果 ssh -T [email protected] 验证出现以下问题:

image.png

则找到对应的比如gitlab信息删除,重新执行 ssh -T [email protected]

image.png

如果ssh无法使用也可使用https,在url中拼接用户名和密码:

格式 :http://userName:[email protected]/abcd/ef

image.png
image.png

你可能感兴趣的:(Git配置多个SSH-Key)