維基百科:sshgit
我的以爲最直接的好處就是Git每次提交時不用輸密碼github
簡要總結一下vim
cd ~/.ssh
生成密鑰文件,這樣就會生成默認名字爲id_rsa
和id_rsa.pub
ssh
ssh-keygen -t rsa -C "YOUR_EMAIL@YOUREMAIL.COM"
(說明:YOUR_EMAIL@YOUREMAIL.COM
換成你本身的郵箱)ide
打開公鑰文件(id_rsa.pub),並把內容複製至代碼託管平臺上測試
vim ~/.ssh/id_rsa.pub
進入 GitCafe -->帳戶設置-->SSH 公鑰管理設置項,點擊添加新公鑰 按鈕,在 Title 文本框中輸入任意字符,在 Key 文本框粘貼剛纔複製的公鑰字符串,按保存按鈕完成操做。url
測試spa
ssh -T git@gitcafe.com
成功應該提示.net
Hi xxxxxx! You've successfully authenticated, but GitCafe does not provide shell access.
這樣就能夠只用ssh協議的URL了,通常默認是https協議的,如圖點擊SSH便可切換:
這樣push代碼時就不用再輸密碼了。
當你在Github或Gitcafe或Coding都有帳號時
假設已經有一個Gitcafe的密鑰了,須要須要添加Github的
生成指定名字的密鑰
ssh-keygen -t rsa -C "YOUR_EMAIL@YOUREMAIL.COM" -f ~/.ssh/github
命名爲github(這裏叫什麼隨意,不要重名便可),而後會生成github
和github.pub
這兩個文件
修改config
文件
vim ~/.ssh/config
添加以下代碼
Host github.com www.github.com IdentityFile ~/.ssh/github
測試
ssh -T git@github.com
若是是coding的
Host coding.net www.coding.net IdentityFile ~/.ssh/coding
若是有兩個Github帳號:
github_a
和github_b
分別對應的是你的帳戶aaaaaa和帳戶bbbbbb修改config
文件
vim ~/.ssh/config
添加以下代碼
Host aaaaaa.github.com HostName github.com User git IdentityFile ~/.ssh/github_a Host bbbbbb.github.com HostName github.com User git IdentityFile ~/.ssh/github_b
修改ssh URL
例如原來的url是:git@github.com:aaaaaa/xxxxxx.git
須要改爲:git@aaaaaa.github.com:aaaaaa/xxxxxx.git
bbbbbb帳號的修改也是如此
最後補充一點(這部分Git熟悉的基本能夠略過):有些童鞋可能在設置這個多帳號前已經配置了一個Github的ssh,而後把代碼clone下來,配置多帳號後,原來的代碼就提交不上了。
此時你進入 原來clone的代碼文件夾下,執行 git remote -v
,便可看到遠處資源庫路徑
如:git@github.com:aaaaaa/xxxxxx.git
執行git remote remove origin
刪除該遠程路徑
執行git remote add origin git@aaaaaa.github.com:aaaaaa/xxxxxx.git
加上正確的遠程倉庫。