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

這篇文章沒有點(diǎn)點(diǎn)技術(shù),主要用于以下用途:
- 僅記之;
- 學(xué)習(xí)并使用Markdown,簡單快捷高效地寫文章(本文用markdown編輯而成),你可以通過這里觀看效果 GitHub多賬戶使用;
- 學(xué)習(xí)git,學(xué)習(xí)使用Octopress。
博客中的一些下載已經(jīng)放到了百度云了,請根據(jù)需要下載。【點(diǎn)我去百度云下載】
最后弱弱地說一下,如果可以的話,轉(zhuǎn)載請?zhí)峁┏鎏?
),謝謝。
posted on 2012-03-08 23:28
李順利 閱讀(3667)
評論(0) 編輯 收藏 所屬分類:
VCS 、
Tips