Windows
使用非標準埠在 Windows 上通過 SSH 設置 Git
我不得不從 Ubuntu 切換,以便可以全速使用 Adobe Suite,現在我發現 Windows 上的 SSH 不像 linux 上那樣統一。
所以我安裝了msysgit和putty,但我發現 git 在使用 putty 進行 SSH 時遇到問題。(我確實在 Windows 路徑上安裝了 msysgit 並使用 plink)。
我現在正在嘗試使用 /.ssh/config 文件將我的 git 項目上的遠端添加到非標準埠上的伺服器
Host 255.255.255.255 Port 22222
然後我將數據添加到我的 git repo 中:
git remote add origin user@255.255.255.255:~/git/repo
但是當我嘗試推送時,我收到一條錯誤消息。
$ git push origin master FATAL ERROR: Network error: Connection refused fatal: The remote end hung up unexpectedly
然後我嘗試從 git 控制台使用 SSH:
ssh user@255.255.255.255
這會提示我輸入我的私鑰密碼(它沒有),當我失敗時,它會詢問我的 SSH 使用者密碼(有效)。
因為我要通過密碼禁用 SSH 登錄,所以我需要 git 才能正確開始使用我的密鑰。
我有類似的工作流程,但使用 gitosis 來管理我的 VPS 上的 repo。
我使用帶有 Windows 路徑和 plink 的 msysgit bash,正如您在上面建議的那樣,但另外我使用pagent來管理 SSH 密鑰。
要訪問我的儲存庫,這是我採取的順序,
- 打開 Pagent 並訪問我的密鑰(如果您有密碼,您只需在此處輸入一次密碼,即使您這樣做了,它也會在整個會話中記住它)。
- 然後像往常一樣打開 Git bash 並添加/送出/推送/拉取/複製。
我要注意的一個警告是,我必須使用 Putty Gen 轉換使用 Git bash 創建的密鑰(可在上面的同一連結中獲得),以便 Pagent 可以使用它。