2015-11-13 87 views
4

我有一個想要克隆的遠程repo。我已經建立了pageant.exe並添加了私鑰。還添加了指向plink.exe的GIT_SSH變量。和克隆命令後,我得到這樣的輸出試圖克隆git repo後Win控制檯掛起

The server's host key is not cached in the registry. You 
have no guarantee that the server is the computer you 
think it is. 
... 
If you trust this host, enter "y" to add the key to 
PuTTY's cache and carry on connecting. 
If you want to carry on connecting just once, without 
adding the key to the cache, enter "n". 
If you do not trust this host, press Return to abandon the 
connection. 
Store key in cache? (y/n) 

當輸入yn什麼也沒有發生,只是控制檯掛起,我不得不終止與Ctrl+C

命令爲什麼出現這種情況,如何解決這一問題?

回答

1

經過幾個小時的調查,我終於找到了解決方案。 膩子必須知道你正在連接的主機,即主機必須是known_host膩子。 Putty存儲有關know_hosts的信息,其中包括 HKEY_CURRENT_USER\SoftWare\SimonTatham\PuTTY\SshHostKeys註冊表項。要強制putty將關於該主機的信息添加到註冊表項,我們可以通過使用您的私鑰通過putty.exe進行訪問。在第一次訪問膩子將要求您將該主機添加到known_hosts。之後,git clone命令成功完成。

也許這將是對某人有幫助的,因爲它不是從第一眼

+2

「真正」的問題顯然是git的(我相信這是「混帳的窗口」)不通過輸入到任何過程問「將密鑰存儲在緩存中?(y/n)」(它可能是ssh程序之一 - 膩子或plink)。 – andrybak

+3

該死的不完整的接受答案omg。 @andrybak非常正確。 只需調用'''「%GIT_SSH%」thehost.com''',你就可以選擇''''''''。你會體驗@andrybak解釋 –

+0

對我來說這是plink導致的問題,所以我把它切換到使用openSSH和它的工作現在 – Eman