Git通過(guò)SSH關(guān)聯(lián)Github

對(duì)于本地PC拉取遠(yuǎn)程Git項(xiàng)目主要有兩種方法:HTTPS 和SSH

  • HTTPS

    這種方式比較簡(jiǎn)單,直接copy https url 就可以clone到本地。這種方式對(duì)于新手比較方便。但是每次fetch和push代碼都要輸入賬號(hào)和密碼。

  • SSH

    使用SSH url需要在clone之前配置好SSH Key,這種方式每次fetch和push是不需要再輸入賬號(hào)和密碼的。

SSH Key的配置

生成一個(gè)新的SSH key

  1. 打開(kāi)命令行工具Terminal
  2. 輸入
$ ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

your_email@example.com是你的GitHub email地址, 然后會(huì)收到Generating public/private rsa key pair.

  1. 輸入你的文件名,可以直接按Enter,會(huì)默認(rèn)命名id_rsa。
Generating public/private rsa key pair.
Enter file in which to save the key (/.ssh/id_rsa):
  1. 然后設(shè)定密碼,如果不設(shè)密碼,直接Enter即可
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
  1. 進(jìn)入.ssh看是否生成SSH Key
$ cd ~/.ssh
$ ls
id_dsa       config      id_dsa.pub

可以看到生成id_dsa或者id_rsa命名的文件,有.pub后綴的是公鑰,另一個(gè)是密鑰。

SSH key添加到ssh-agent

  1. 運(yùn)行ssh-agent
$ eval "$(ssh-agent -s)"
Agent pid 59566
  1. 如果是macOS Sierra 10.12.2或者更新的系統(tǒng),你需要修改~/.ssh/config文件,這樣可以自動(dòng)加載keys到ssh-agent
Host *
 IdentityFile ~/.ssh/id_rsa

如果你的mac上已經(jīng)有其他SSH key,cinfig可能已經(jīng)有其他設(shè)置,直接在config后面跟上這兩行即可

  1. 添加你的SSH私鑰到ssh-agent和存儲(chǔ)你的密碼。
$ ssh-add -K ~/.ssh/id_rsa

添加SSH key到GitHub賬號(hào)

  1. 復(fù)制公鑰的內(nèi)容到黏貼板。公鑰的內(nèi)容以ssh-rsa開(kāi)頭。
$ pbcopy < ~/.ssh/id_rsa.pub
# Copies the contents of the id_rsa.pub file to your clipboard
  1. 打開(kāi)您的GitHub首頁(yè),點(diǎn)擊右上角的頭像,打開(kāi)Settings
Settings
Settings
  1. 在設(shè)置頁(yè)的側(cè)邊欄,點(diǎn)擊SSH and GPG keys
  2. 點(diǎn)擊New SSH key or Add SSH key
  3. Title輸入公鑰的名字,可以取個(gè)自己看得懂的名字。在Key欄黏貼剛才copy的公鑰內(nèi)容。然后點(diǎn)擊Add SSH Key。完成
Add Key
Add Key

測(cè)試GitHub連接

 $ ssh -T git@github.com

你將會(huì)看到

 The authenticity of host 'github.com (207.97.227.239)' can't be established.
    RSA key fingerprint is ****
    Are you sure you want to continue connecting (yes/no)?

輸入yes

Hi dragonjiang! You've successfully authenticated, but GitHub does not provide shell access.

可以和GitHub愉快的玩耍了。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 前言: 自己作死下載了多個(gè)破解軟件,不知道那個(gè)可能程序有問(wèn)題,導(dǎo)致了電腦重啟后無(wú)法開(kāi)機(jī),苦逼的只能重裝系統(tǒng),所以之...
    Eugene_iOS閱讀 15,997評(píng)論 3 10
  • 一、Homebrew簡(jiǎn)介、安裝以及git安裝 Homebrew簡(jiǎn)稱brew,是Mac系統(tǒng)上軟件包的管理工具,能在M...
    程旭媛閱讀 2,922評(píng)論 1 1
  • 背景 公司最近將代碼由svn遷移到了gitlab來(lái)托管,我個(gè)人平時(shí)也經(jīng)常使用Github,可是公司郵箱與我的Git...
    洛城夜雨閱讀 2,071評(píng)論 0 5
  • SSH全稱Secure SHell,顧名思義就是非常安全的shell的意思,SSH協(xié)議是IETF(Internet...
    StarShift閱讀 2,685評(píng)論 0 7
  • 初中的時(shí)候收到過(guò)小紙條。 那天剛下晚自習(xí),臨班的一個(gè)同學(xué)叫住我,遞給我一張紙條和一塊德芙巧克力。我疑惑的打開(kāi)紙條,...
    魚小婧閱讀 914評(píng)論 48 5

友情鏈接更多精彩內(nèi)容