在咱们开发过程当中,可能会遇到使用同一台机器,既要向公司git服务器提交代码,也要向gitlib或者gitee等
git仓库提交代码,2个仓库设置的用户名信息,不同,此时须要用到多个ssh-key管理.主要包含如下几个步骤.git
1. 生成github.com对应的私钥公钥github
ssh-keygen -t rsa -C xxx@126.com
**2. 一样的方式生产git.oschina.net的私钥公钥shell
ssh-keygen -t rsa -C xxx@163.com
如图所示
bash
每一个帐号单独配置一个Host,每一个Host要取一个别名,每一个Host主要配置HostName和IdentityFile两个属性便可服务器
Host的名字能够取为本身喜欢的名字,不过这个会影响git相关命令,例如:
Host mygithub 这样定义的话,命令以下,即git@后面紧跟的名字改成mygithub
git clone git@mygithub:cary/sample.gitssh
HostName 这个是真实的域名地址 IdentityFile 这里是id_rsa的地址 PreferredAuthentications 配置登陆时用什么权限认证--可设为publickey,password publickey,keyboard-interactive等 User 配置使用用户名
** config文件配置以下:**ide
#gitee Host gitee.com HostName gitee.com PreferredAuthentications publickey IdentityFile ~/.ssh/id_rsa_self User cary #github Host github.com HostName github.com PreferredAuthentications publickey IdentityFile ~/.ssh/id_rsa_self User cary
**使用ssh -T 校验测试
ssh -T git@gitee.com 若是成功会显示以下: Hi cary! You've successfully authenticated, but GITEE.COM does not provide shell access.