win下給 Git Bash 添加私鑰時ssh-add報錯的解決辦法





win下給 Git Bash 添加私鑰時ssh-add報錯的解決辦法


從 eclipse 換到 idea 後,

發現 idea 只集成了 git Bash,

而且沒有加載密鑰的設置功能,

那麼問題來了:

在idea中提交代碼時提示需要輸入密碼,

由於我們是使用密鑰認證,並不知道密碼。


既然 idea 集成的是 git Bash,

要想解決問題,

我們就需要讓 git Bash 加載我們的私鑰。


現在解決問題有兩個辦法:

一:使用 idea 開發,需要提交代碼或者其他操作時打開資源管理器使用 TortoiseGit 進行操作;

二:想辦法讓 git Bash 加載私匙,完成認證操作。

方案一的話需要來回折騰,方案二可以直接在idea中完後操作,更方便。


網上有好多教程都是讓使用 “ssh-add 私匙文件路徑  ” 這條命令,

試了一下會報如下錯誤:Could not open a connection to your authentication agent



Could not open a connection to your authentication agent

在 Linux 環境這樣做是可以的,

但在 win 下不行。

後來 google 一下,

在 stackoverflow 中找到的解決辦法。

(跟我默唸:google 大法好!)


解決方法:

打開git Bash命令行,

依次執行以下命令:

1.exec ssh-agent bash

2.eval ssh-agent -s

3.ssh-add “C:\Users\Administrator\.ssh\id_rsa”

引號中的路徑就是你私匙文件的路徑,路徑需要使用英文雙引號包裹。



Identity added :說明已添加成功

執行”ssh [email protected]“測試一下,

root替換成git服務器的用戶名,@後面替換成git服務器的ip地址。

如果不需要輸入密碼就是成功,如果還是需要的話可以再次操作一下,

需要注意的是在git add 之前執行一條 “ssh-add -D” 命令,這是用來清除已有的私鑰。

測試通過以後再打開idea,

down下代碼,搞定!


ps 我第一次操作時成功後,

發現.ssh文件夾中多了一個”known_hosts”文件,

手閒就把它幹掉了,

再次pull代碼時就又不行了,

多次操作也不行,

後來加一個上面那個清除的命令才搞定。



發佈了8 篇原創文章 · 獲贊 6 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章