在咱們開發過程當中,可能會遇到使用同一臺機器,既要向公司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.