【Git】GitHub SSH Key配置push仍然失敗的問題

git_ssh_key_01.png

最近在搞博客的事情,發現部署時會出現如上圖所示的錯誤,主要是這句: git@github.com: Permission denied (publickey),提示 沒有權限,push失敗,以前一直是拿GitHub客戶端上下代碼的,這回打命令用git竟然失敗了。結果一番研究 百度,發現和 SSH Key有關,下面是我 解決這個問題的通過,在此記錄下來。↓

1、獲取SSH Key

SSH Key字面意思就是個鑰匙,通常發起網絡請求時咱們總要在傳入ID,代表身份,這東西固然也是如此。git

首先須要手動獲取SSH Key,命令行進入到項目文件夾後,輸入指令:github

-> git config --global user.email "email@email.com" #這裏email爲註冊GitHub帳號的郵箱,下同
-> ssh-keygen -t rsa -C "email@email.com" #獲取SSH Key
-> ssh-add ~/.ssh/id_rsa #將獲取的SSH Key添加到id_rsa 這一步必不可少

接下來一路回車,若是出現xxxx/.ssh/id_rsa already exists. Overwrite (y/n)? 就摁yshell

1.存放位置

⚠️SSH Key會存放在:↓vim

git_ssh_key_07.png

macOS: 訪達 -> 前往 -> 我的 -> .ssh(.ssh文件夾通常是隱藏的,顯示隱藏文件夾可用快捷鍵shift + command + .網絡

Windows: C:\Users\Administrator\.sshssh

.ssh文件夾下包含有id_rsaid_rsa.pub兩個文件,咱們須要的key就在id_rsa.pub裏面。測試

2.打開方式

-> vim ~/.ssh/id_rsa.pub

可用以上方式打開,固然也能夠直接雙擊打開。退出編輯模式快捷鍵shift + Q,再摁Qspa

2、爲GitHub設置SSH Key

1.設置SSH Key

❗️這裏要注意一下,登陸GitHub後點擊右上角的頭像,而後Settings -> SSH and GPG Keys -> New SSH Keys 。⬇️命令行

git_ssh_key_02.png➡️git_ssh_key_03.pngcode

git_ssh_key_08.png

-> vim ~/.ssh/id_rsa.pub

添加key,title任意填,key就不行了,使用上面的命令打開後,將完整的key,就是ssh-rsa一直到郵箱,都複製到裏面去,保存便可。完成後的截圖⬇️。

git_ssh_key_04.png

2.SSH Key 和 Deploy Key

這裏其實還有個點,每一個倉庫的設置頁有一個Deploy Key,它的獲取方法和上面是同樣的,可是這個只對這一個倉庫有效,並且彷佛有有效期限?以前添加SSH Key搞錯了,忙活了好長時間。

3.接下來

-> ssh -T git@github.com #測試是否添加成功
-> ssh-add ~/.ssh/id_rsa # 若出現問題 從新添加key(不用在Github裏再添加)

push一下試試吧。

3、問題復現

若是首圖的問題復現,而最近才添加過SSH Key,那麼能夠從新使用ssh-add ~/.ssh/id_rsa試一試。

相關文章
相關標籤/搜索