2011-05-25 74 views
25

所以我安裝了msysgit,並從bash shell運行git successfuly。從Windows Cmd行運行git:關鍵文件在哪裏?

從bash shell中,我用ssh-keygen創建了密鑰 - 一切正常。
密鑰文件位於我的%userprofile%\.ssh文件夾中(來自bash shell,它是:~/.ssh)。
我能夠連接到我的服務器(在我的情況下不融洽)。

接下來,我確實希望能夠從Windows Cmd shell運行git。
c:\msysgit\binc:\msysgit\mingw\bin添加到搜索路徑。
Git在本地工作就好了:分支,合併,添加,提交,結帳,......運行良好。

但是,試圖與服務器合作失敗,以:「Permission denied (publickey).
它看起來像git的,在命令行中執行時會考慮不同的位置,試圖分配的密鑰文件,或其他原因導致它失敗。

回答

50

要獲得mysysgit命令行來找到你的.ssh鍵,你就需要有%HOME%指向包含的.ssh文件夾

通常的目錄,你可以做

set HOME=%USERPROFILE% 
+0

謝謝JaredPar和VonC。你的建議已經奏效。 +1兩者。 – Uri 2011-05-25 16:49:59

+6

我收到了同樣的錯誤。我以這種方式設置了%HOME%...仍然沒有快樂。還有其他建議嗎?我可能會錯過什麼? – GreenAsJade 2013-09-07 04:33:10

+1

我一直在尋找這個答案的地方...謝謝@ JaredPar – 2015-08-13 15:29:10

15

從Windows DOS文件中,您需要定義一個%HOME%環境變量。

HOME默認情況下不存在於DOS會話中。
您可以將其設置爲%userprofile%,因爲這已經是您當前的設置。
您也可以將它添加到您的用戶環境變量中,以便任何DOS會話獲取它。

+0

合作,設置用戶環境變量,感謝您的救星! – 2013-06-18 21:56:30