在github托管了一些項目,而且自己創建的幾個github賬號, 比如有 lishunli, jdbcdslog 等。 github 使用ssh進行驗證連接,但是如果你本地創建一個ssh key的話,等你切換到另一個賬號的話,添加ssh key,就會有“SSH 已經被使用”的出錯信息,當然這個時候想到的就是,使用多個SSH Key,那么如何能夠讓Github知道你使用的多個key了(Github 默認只會找 id_rsa 的 key)。 當然解決的辦法也很簡單,就是配置 ssh 的 config, 具體請參考 多個github帳號的SSH key切換 ,這篇文章已經介紹了很詳細了,我這里只說一些關鍵的地方:
- 不需要使用ssh-add命令來添加ssh keys,我本機測試過,生成很多keys,只要config配置正確,都ok
- config 的配置關鍵點在于:
1
2
|
Host github.cn
HostName github.com
|
這里Host的怎么配置,你github的repo ssh 連接url就要相應的修改成這樣,比如如上面的配置,原連接地址是
1
|
git@github.com:lishunli/GitHub-Multi-Accounts.git
|
那么根據上面的配置,就要把github.com 修改成github.cn, 那么ssh解析的時候就會自動的把github.cn 轉換為 github.com,這樣地址就一樣了。修改后就是
1
|
git@github.cn:lishunli/GitHub-Multi-Accounts.git
|
這樣的配置,類似hosts,當然你可以任意配置上面的Host,例如可以這樣
1
2
|
Host lishunli.github.com
HostName github.com
|
那么 你git clone 或者 git remote add origin 后面就應該類似這樣
1
2
3
|
git@lishunli.github.com:YourAcccountName/YourRepoName.git
# 原始是
git@github.com:YourAcccountName/YourRepoName.git
|
是不是很簡單,記得把原HostName變換成你配置的Host就可以了。
搜索的時候,經常受到的是官方幫助文檔Manage multiple clients, 說是創建Org,但是據我所知,并不能很好的解決多賬戶問題(可能本人所知有限,并沒有很好地體會Org的作用),想要了解更多 github org,請參看
如何在 GitHub 建立組織
組織和團隊
附本人的ssh config 文件
(config)download
1
2
3
4
5
6
7
8
9
10
11
|
# usc github user
Host usc.github.com
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa_usc
# lishunli github user
Host lishunli.github.com
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa_lishunli
|
無圖無真相

這篇文章沒有點點技術,主要用于以下用途:
博客中的一些下載已經放到了百度云了,請根據需要下載。【點我去百度云下載】
最后弱弱地說一下,如果可以的話,轉載請提供出處(
),謝謝。
posted on 2012-03-08 23:28
李順利 閱讀(3666)
評論(0) 編輯 收藏 所屬分類:
VCS 、
Tips