常常在开发环境存在多个git库,比如官方的github、公司搭建的gitlab、自己的私人库等等多个git库,为了方便使用,git需要配置多个SSH公钥信息。
在centos7.5下,进入用户目录,以test用户为例
#若不存在,先创建.ssh目录
mkdir -p /home/test/.ssh
# 创建官方的rsa key,名字为github,目录~/.ssh/
ssh-keygen -t rsa -C "你的git帐号邮箱" -f ~/.ssh/github
# 公司搭建的rsa key,名字为gitlab,目录~/.ssh/
ssh-keygen -t rsa -C "你公司的gitlab帐号邮箱" -f ~/.ssh/gitlab
#进入.ssh目录,并创建config文件
cd /home/test/.ssh
vi config
内容如下:
Host github.com www.github.com
IdentityFile ~/.ssh/github
Host 你公司创建的gitlab域名
IdentityFile ~/.ssh/gitlab
保存
之后添加SSH公钥到官方的github、公司搭建的gitlab中。
接下来测试,
ssh -T git@github.com
ssh -T git@gitlab.com(你公司创建的gitlab域名)
如果连接成功的话,会出现类似以下信息。
Hi USERNAME! You've successfully authenticated, but GitHub does not provide shell access.
Welcome to GitLab, USERNAME!