1. 程式人生 > >Windows下使用TortoiseGit的無法直接使用linux ssh-key的解決方案

Windows下使用TortoiseGit的無法直接使用linux ssh-key的解決方案

算法 files net 指定 文件 keygen nbsp 比較 tro

寫此文章的重要原因是很多人在windows下使用TortoiseGit時覺得無法直接和Linux系統共用一個密鑰對
究其原因是TortoiseGit默認使用PuTTY格式的ssh-key,和linux系統的ssh-key格式不一樣,如果要想使用
就必須使用key格式轉換工具進行相應的轉換才可以使用,那麽有沒有其它更為便捷的方式了,當然是的有
那就是直接更改TortoiseGit調用的ssh客戶端,讓其直接使用和linux系統一致的ssh客戶端,也即
git-for-windows所提供的ssh客戶端,具體操作如下:

TortoiseGit設定——>network選項——>ssh客戶端
將默認值C:\Program Files\TortoiseGit\bin\TortoisePlink.exe
修改為C:\Program Files\Git\usr\bin\ssh.exe

順便說一下使用git-for-windows所提供的git bash生成ssh key的操作:
打開git bash,輸入ssh-keygen.exe -t rsa -C "email" 如果不想使用密碼短語的話,
一路回車會自動生成ssh密鑰對文件,密鑰文件默認保存路徑C:\Users\User_name.ssh,
打開gitlab個人settings的的sshKeys頁面,將剛剛生成的id_rsa.pub文件中的內容
復制到Key輸入框中,點擊"ADD SSH KEY"添加新公鑰,

順便再說一下ssh-keygen靜默生成key的方式

放在腳本中使用比較方便
ssh-keygen.exe -t rsa -N ‘‘ -C "email" -f .ssh/key_name

不會詢問密鑰的密碼短語
不會詢問密鑰文件的保存位置
當然如果key_name已經存在,會有是否覆蓋的提示信息

上術使用方法中的幾個選項的釋義:
-t 指定加密算法
-N ‘‘ 指定密鑰的密鑰短語為空
-C 註釋信息 一般填寫郵箱名稱 或者 有標識性的字符串
-f 要保存生成密鑰文件的路徑以及key的文件名 此處的文件名不需要指定擴展名
因為有公鑰和密鑰兩個文件產生,都會使用這個文件名

使用心得,喜歡的可以點贊+收藏!

Windows下使用TortoiseGit的無法直接使用linux ssh-key的解決方案