場景:使用github的時候,你們都知道須要給該帳號添加一個SSH key才能訪問,參考 具體設置 。固然若是你在多臺機器使用一個帳戶,你能夠爲該帳戶添加多個SSH key。因爲github是使用SSH key的fingerprint來斷定你是哪一個帳戶,而不是經過用戶名,這樣你就能夠在設置完以後,在本地直接執行下面的語句,它就會自動使用你的.ssh/id_rsa.pub所對應的帳戶進行登錄,而後執行相關命令。git
1 #本地建庫 2 $ git init 3 $ git commit -am "first commit' 4 5 #push到github上去 6 $ git remote add origin git@github.com:xxxx/test.git 7 $ git push origin master 可是若是你想在一臺機器使用兩個github帳號(好比私人帳號和工做用帳號)。這個時候怎麼指定push到哪一個帳號的test倉庫上去呢?github
解決方案(假設你已經擁有私有帳號且已經OK,如今想使用另外一個工做用帳號):ssh
1:爲工做帳號生成SSH Keyrem
$ ssh-keygen -t rsa -C "your-email-address"get
#存儲key的時候,不要覆蓋現有的id_rsa,使用一個新的名字,好比id_rsa_workit
2:把id_rsa_work.pub加到你的work帳號上ast
3:把該key加到ssh agent上。因爲不是使用默認的.ssh/id_rsa,因此你須要顯示告訴ssh agent你的新key的位置test
$ ssh-add ~/.ssh/id_rsa_workemail
4:配置.ssh/config配置
$ vi .ssh/config
#default github Host github.com HostName github.com IdentityFile ~/.ssh/id_rsa
Host github_work HostName github.com IdentityFile ~/.ssh/id_rsa_work
5:這樣的話,你就能夠經過使用github.com別名github_work來明確說你要是使用id_rsa_work的SSH key來鏈接github,即便用工做帳號進行操做。
#本地建庫 $ git init $ git commit -am "first commit'
#push到github上去 $ git remote add origin git@github_work:xxxx/test.git $ git push origin master