Git与SSH在Windows上

我已经经历了excellent guide provided by Tim Davis,这是关于配置Git使用SSH在Windows下,为了产生一个Git服务器为了我的DVCS的主要地方。

我正在为我的项目创建一个克隆。我已经经历了所有的步骤,直到这一点,但我不断得到这个从TortoiseGit:

git.exe clone -v “ssh://Administrator@127.0.0.1:22/SSH/Home/administrator/myapp.git” “E:\GitTest\myapp”

bash: Administrator@127.0.0.1: command not found
Initialized empty Git repository in E:/GitTest/myapp/.git/
fatal: The remote end hung up unexpectedly
Success

并没有克隆。

BTW:TortoisePLink就在此消息出现之前出现,并问我:“登录为:”(我认为这个信息是在命令中给出,即:Administrator @ blahblah。

我的home变量设置正确的地方:
从Git Bash shell:

echo $HOME
/c/SSH/home/Administrator

我也试过使用Putty的plink而不是TortoisePLink(在Git和TortoiseGit的安装)。这一次错误被缩减为:

git.exe clone -v “ssh://Administrator@127.0.0.1:22/c:/SSH/Home/administrator/myapp.git” “E:\GitTest\myapp”

Initialized empty Git repository in E:/GitTest/myapp/.git/
fatal: The remote end hung up unexpectedly
我与这个问题打了几个小时,然后绊倒明显的答案。我的问题是我使用不同的ssh实现之间,当我生成我的钥匙,当我使用git。

我使用ssh-keygen从命令提示符生成我的密钥,但是当我尝试“git clone ssh:// …”我得到了与你相同的结果,提示输入密码和消息“fatal:The remote结束意外“。

通过执行Windows“where”命令确定哪些ssh窗口正在使用。

C:\where ssh
C:\Program Files (x86)\Git\bin\ssh.exe

第二行告诉你将执行哪个程序。

接下来你需要确定git正在使用哪个ssh。查找:

C:\set GIT_SSH
GIT_SSH=C:\Program Files\TortoiseSVN\bin\TortoisePlink.exe

现在你看到的问题。

要纠正这个问题,只需执行:

C:\set GIT_SSH=C:\Program Files (x86)\Git\bin\ssh.exe

检查是否应用更改:

C:\set GIT_SSH
GIT_SSH=C:\Program Files (x86)\Git\bin\ssh.exe

现在git将能够使用您之前生成的密钥。

此修复程序到目前为止只对当前窗口。要完全解决它,您需要更改您的环境变量。

>打开Windows资源管理器
>右键单击计算机,然后选择属性
>单击左侧的高级系统设置链接
>单击环境变量…按钮
>在系统变量部分中选择GIT_SSH变量,然后按编辑…按钮
>更新变量值。
>按确定关闭所有窗口

现在任何未来的命令窗口打开都将有正确的设置。

希望这可以帮助。

http://stackoverflow.com/questions/2499331/git-with-ssh-on-windows

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:Git与SSH在Windows上