這是【Git 教程系列第 26 篇】,如果覺得有用的話,歡迎關(guān)注專欄。
注:
如果你是因為升級系統(tǒng)到 Ventura 后遇到的這個問題,可以直接看第三步的解決方案,前兩步是我自己的寫作習慣,只是記錄一下這個過程,當然你也能從中讀到更多的信息。
一:問題描述
因為項目的 Xcode 版本要更新到 14,我自己的 Mac 電腦系統(tǒng)版本是 Catalina 10.15.7 的,不兼容 Xcode 14 版本,所以只能升級 Mac 系統(tǒng)了,然后就升到了 Ventura 13.0.1。
升級后用 git pull 拉取代碼的時候,提示讓我輸入密碼,我以為是升級系統(tǒng)后的安全驗證,就輸入了密碼。
我能確定輸入的密碼是正確的,但卻提示
Permission denied, please try again(權(quán)限被拒絕,請重試).
然后又不信自的再次輸入密碼,第二次提示的和第一次一樣,第三次系統(tǒng)認為的“輸入錯誤”后,提示
Permission denied (publickey,password).權(quán)限被拒絕
,還讓我確認項目是否存在
如下圖所示
情況也就是這么個情況,1 個小時前在公司項目拉取還是好好的呢,這不是開玩笑嗎?盤它。
二:解決過程
- 重啟,然而并沒有用。
- 通過
vi /etc/ssh/sshd_config
查看和根據(jù)相關(guān)文章更改某些字段的值(如把 PermitRootLogin 的值由 no 改為 yes),然而并沒有什么卵用。 - 既然它提示了權(quán)限問題,我就先去項目里查看遠端里配置的 SSH Key 是不是出現(xiàn)了問題,然而沒有問題。
- 最后就想著是不是需要重新配置一次 SSK Key,于是就重新配置了,然而還是沒有用。
這也不行,那也不行,男人不能說自己不行啊。
然后就想著,難道是升級后,SSH 更改了驗證方式?然后就找到了一篇文章,點擊查看原文
文章里說的很清楚,為什么會引發(fā)這個問題,以及如何解決的,一種是兼容以前的 ssh-rsa 算法,另外一種是用 Ed25519 算法代替以前的 ssh-rsa 算法,我用的是后者,所以做下記錄。
三:解決方案
既然是用 Ed25519 算法代替以前的 ssh-rsa 算法,所以就要刪除掉遠端的 SSH Key,重新用 Ed25519 算法配置一次公鑰到遠端就行了。
在終端執(zhí)行命令 ssh-keygen -t ed25519
,然后連續(xù)按 3 次 Enter 鍵,如下圖所示
然后在本地的 .ssh 文件夾下會生成兩個文件,其中 id_ed25519 文件中的內(nèi)容就是我們需要添加到遠端 SSH Key 的,
如下圖所示
至于如何配置 SSH Key,針對不同的系統(tǒng)我也寫過相關(guān)流程,鏈接如下
- Mac 配置 SSH-Key
- Windows 配置 SSH-Key
博客中寫的很詳細,不懂的一步一步根據(jù)提示來就行了。
至此,Mac 升級系統(tǒng)到 Ventura 后,Git 公鑰報 Permission denied 錯誤問題的解決方案就說到這里了。
你的問題得到解決了嗎?歡迎在評論區(qū)留言。文章來源:http://www.zghlxwxcb.cn/news/detail-429579.html
贈人玫瑰,手有余香,如果覺得文章不錯,希望可以給個一鍵三連,感謝。文章來源地址http://www.zghlxwxcb.cn/news/detail-429579.html
結(jié)束語
技術(shù)是一點一點積累的,大神也不是一天就可以達到的。原地不動就是退步,所以每天進步一點點。
最后,附上一句格言:"好學若饑,謙卑若愚",望共勉。
到了這里,關(guān)于【Git 教程系列第 26 篇】Mac 升級系統(tǒng)到 Ventura 后,Git 公鑰報 Permission denied 錯誤問題的解決方案的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!