我在Windows PC上安装了mysysgit和TortoiseGit,它连接到Linux机器上的远程Git仓库。我创建了ssh密钥,并将它们添加到TortoiseGit中的配置文件中。当我与TortoiseGit中的远程仓库进行交互时,一切正常。没有密码提示。但是,当我尝试从命令行运行Git命令时,系统会提示您输入SSH密码。
我需要做什么才能从命令行提示我输入密码?
答案 0 :(得分:4)
确保您的git会话引用TortoisePLink.exe
(在GIT_SSH环境变量中),如“Why git can't remember my passphrase under Windows”中所述:
(您可能已经完成了前两个步骤)
pageant.exe
转换您的密钥以使用TortoiseGit的puttygen.exe
。pageant.exe
,打开您的.ppk
文件(“添加密钥”),并提供密钥的密码。添加环境变量:
GIT_SSH=C:\full\path\to\TortoisePlink.exe
这假定您的TortoiseGit is using TortoisePlink.exe
。
OP scott80109结束in the comments:
安装了msysgit以使用Open SSH 我将其更改为使用
plink
,现在无需提示
Erez A. Korn添加in the comments:
我更喜欢使用openssh,因为它不需要我以其他格式(ppk)使用我的密钥。
我写了一个小包装器来启动ssh-agent
并处理业务,然后将其添加到我的Windows Startup中。
您可以查看erezak/ssh-agent-wrapper-win
中的代码。
答案 1 :(得分:0)
我建议使用选美。阅读此http://guides.beanstalkapp.com/version-control/git-on-windows.html并将ssh-key添加到选美。它影响全球。
答案 2 :(得分:0)
我的用例需要多个github用户使用受密码短语保护的ssh密钥。
我对~.ssh/config
文件进行了排序,以便为不同的回购域使用不同的密钥,如here所述
但是,我不想每次都输入密码,而且我不想使用ssh-agent。
以下是我如何设置Pageant以在Windows登录时请求并记住我的密码:
C:\putty\PAGEANT.EXE plato_cambrian.ppk plato.ppk
”另外,对于那些在这里结束的ubuntu / linux mint的人,我记录了类似的步骤here