將本地代碼推送到遠(yuǎn)程分支報(bào)錯(cuò):Permission denied (publickey). fatal: Could not read from remote repository.
確保已經(jīng)添加了正確的 SSH 密鑰??梢允褂靡韵旅顧z查 SSH 密鑰是否已經(jīng)添加:
ssh -T git@github.com
如果看到消息“Hi [username]! You've successfully authenticated, but GitHub does not provide shell access.”
,則表示已成功通過 SSH 訪問 GitHub。
否則,表示沒有訪問遠(yuǎn)程倉庫的權(quán)限,可能是因?yàn)闆]有正確配置 SSH 密鑰或沒有在 Github 上將公鑰添加到的帳戶中。
Git的SSH公鑰是用于通過SSH協(xié)議進(jìn)行身份驗(yàn)證和授權(quán)的公鑰,它允許在Git版本控制系統(tǒng)中訪問需要身份驗(yàn)證的倉庫。要將SSH公鑰添加到GitHub賬戶,可以按照以下步驟進(jìn)行操作:
1.生成SSH密鑰對(duì),如果已經(jīng)有了SSH密鑰對(duì),可以跳過此步驟,否則,可以在終端或命令行窗口中運(yùn)行以下命令生成一對(duì)SSH密鑰:
ssh-keygen -t ed25519 -C "your_email@example.com"
這將生成一個(gè)新的SSH密鑰對(duì),并要求提供電子郵件地址作為注釋。根據(jù)需要更改電子郵件地址。
成功生成的頁面如上,并且在該目錄會(huì)生成新的文件:
1.將SSH公鑰添加到GitHub賬戶。
2.登錄到你的GitHub賬戶,然后單擊右上角的個(gè)人資料圖標(biāo)并選擇“Settings”。
3.在左側(cè)菜單中選擇“SSH and GPG keys”(SSH和GPG密鑰),然后單擊“New SSH key”(新SSH密鑰)按鈕。
4.在“Title”字段中提供一個(gè)描述性的名稱,然后將剛剛生成的SSH公鑰(.pub)的內(nèi)容復(fù)制到“Key”字段中。
5.最后,單擊“Add SSH key”(添加SSH密鑰)按鈕。
驗(yàn)證SSH連接。打開終端或命令行窗口,并使用以下命令測(cè)試SSH連接:
ssh -T git@github.com
這將連接到GitHub并驗(yàn)證的SSH密鑰是否已成功添加到的GitHub賬戶。如果一切正常,應(yīng)該會(huì)看到一條消息,指示已成功通過SSH進(jìn)行身份驗(yàn)證。
如果 ssh -T 郵箱@example.com
失敗,可能有幾個(gè)原因需要檢查:
檢查 SSH 代理是否在運(yùn)行:
在運(yùn)行 ssh -T 郵箱@example.com 前,確保 SSH 代理正在運(yùn)行。使用以下命令檢查:
eval "$(ssh-agent -s)"
檢查 SSH 密鑰是否被添加到代理:
使用以下命令確保 SSH 密鑰已經(jīng)添加到 SSH 代理中:
ssh-add -l
如果密鑰沒有列出,使用以下命令添加:
ssh-add ~/.ssh/你的新密鑰
GitHub 是否識(shí)別 SSH 密鑰:
確保你的 GitHub 帳戶中包含了新生成的 SSH 密鑰。在 GitHub 上的 “Settings” -> “SSH and GPG keys” 中添加公鑰
檢查網(wǎng)絡(luò)連接:
確保你的網(wǎng)絡(luò)連接正常,防火墻未阻止 SSH 連接。
使用 -v 選項(xiàng)進(jìn)行詳細(xì)調(diào)試:文章來源:http://www.zghlxwxcb.cn/news/detail-417047.html
ssh -v -T 郵箱@example.com
這將顯示 SSH 連接的詳細(xì)信息,有助于排查問題文章來源地址http://www.zghlxwxcb.cn/news/detail-417047.html
到了這里,關(guān)于Permission denied (publickey). fatal: Could not read from remote repository.的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!