使用场景:一个是公司的git服务器,一个是csdn的git服务器。
这样,git就能自动区分不同仓库的服务器了。
什么是ssh?
这是一个应用层协议,同https类似都是为了保密。使用https或ssh方法都可以与git服务器通信,上传代码或下载代码。https需要每次输用户名密码(貌似这样),比较麻烦;ssh需要在客户端生成凭证(就是私钥与公钥),把公钥添加到服务器,就可以了。
1.生成多个ssh秘钥
ssh-keygen -t rsa -C "new email"
按照提示,保存到新的文件中,比如我指定"id_rsa_csdn",那么 公共密钥保存在 ~/.ssh/id_rsa_csdn.pub,私有密钥保存在 ~/.ssh/id_rsa_csdn。
图1 多个rsa示意
2.git网站上添加公钥
把上一步生成的id_rsa_csdn.pub内容粘贴到网站上。
3.添加config文件
一个例子见下:
#default code.ctripcorp.com Host code.ctripcorp.com HostName code.ctripcorp.com User 小明@Ctrip.com IdentityFile ~/.ssh/id_rsa Host code.csdn.net HostName code.csdn.net User 小明@qq.com IdentityFile ~/.ssh/id_rsa_csdn
这样,git就能自动区分不同仓库的服务器了。