1. 程式人生 > >git在clone時需要輸入密碼Enter passphrase for key 導致spring cloud config 配置中心無法拉取配置檔案的解決方法

git在clone時需要輸入密碼Enter passphrase for key 導致spring cloud config 配置中心無法拉取配置檔案的解決方法

前幾天把系統從win7換到了win10 重灌了開發環境 一直沒什麼問題

今天在除錯spring cloud 時 發現無論如何都拉取不到配置檔案,

通過微服務日誌提示 Could not locate PropertySource: label not found  大致就是找不到配置檔案

然後手動去config服務去查詢配置檔案時報出了404錯誤

重點在這一句 Cannot clone or checkout repository 無法克隆或簽出倉庫

起初我以為是git倉庫的uri 或者使用者密碼配置錯誤 檢查發現並沒有,

於是手動使用git命令進行clone, 結果發現clone需要手動輸入一次密碼,

也就是Enter passphrase for key

我懷疑可能是因為我本地的git進行clone需要輸入密碼導致config服務無法拿到倉庫導致的,

於是開始解決這個Enter passphrase for key問題,使用強大的百度搜索發現並沒有解決方法 大部分是使用ssh-add 

但是我在使用ssh-add之後並還是需要輸入,

經過不斷的排查,我覺得可能是我的公鑰的問題,於是乎我開始重新生成公鑰

先刪除了本地 ~/.ssh下的id_rsa   id_rsa.pub   known_hosts 三個檔案

然後輸入命令 生成公鑰

$ ssh-keygen -t rsa -C "你的使用者名稱"

# Generating public/private rsa key pair.
# Enter file in which to save the key (/c/Users/Administrator/.ssh/id_rsa):

這裡是讓你給檔案取名 可以直接 回車 預設id_rsa就好

#Enter passphrase (empty for no passphrase):

重點: 這裡提示輸入密碼 我本來以為是輸入自己的git賬號的密碼, 但是發現 括號寫著(空 無口令)

            於是搜了一下這裡的相關資料 這裡的意思是 使用ssh連線 這裡建立一個你的連線的密碼,

             如果為空 則預設使用私鑰進行連線

 

終於找到原因了, 就是這裡, 應該是我之前安裝環境的時候,

這裡沒有注意, 就直接給了自己git賬號的密碼,導致每次clone都需要輸入密碼 ,

直接回車不輸入密碼, 將公鑰放到git上去之後, clone一下, 一路順暢,

開啟congfig服務 輸入連結直接獲取配置 也能獲取到了,再將微服務執行,果然也能獲取到配置正常啟動了