Git推/拉路径无法运行到运行msysgit + cygwin sshd的Windows源

时间:2012-02-13 15:46:21

标签: git cygwin msysgit

在尝试解决我遇到的问题:managing website on windows using git时,我在Windows 2008服务器上安装了Cygwin openssh和Git for Windows(msysgit)(让我们称之为myserver)。

我在cygwin路径/var/git/example.git上设置了一个简单的git repo设置,它在Windows上映射到c:\cygwin\var\git\example.git

我的用户git拥有repo文件夹的权限。

我可以使用Putty从我的XP工作站使用基于密钥的身份验证git登录myserver。我在选美中打开了钥匙。

我能够在Putty中使用cygwin样式路径,所以例如cd /var/git/example.git让我进入我的裸仓库。

但是,当我使用Git Bash(MingW32)并试图这样做时,我遇到了问题:

git clone ssh://git@myserver/var/git/example.git

我收到回复:

Cloning into example...
fatal: '/var/git/example.git' does not appear to be a git repository
fatal: The remote end hung up unexpectedly

当我尝试:

git clone ssh://git@myserver:c:/cygwin/var/git/example.git

它有效并且repo被克隆。

Cloning into example...
remote: Counting objects: 384, done.
remote: Compressing objects: 100% (288/288), done.
remote: Total 384 (delta 85), reused 359 (delta 73)
Receiving objects: 100% (384/384), 51.72 MiB | 201 KiB/s, done.
Resolving deltas: 100% (85/85), done.

但是,如果我尝试使用:

cd example
git push

失败了:

git: '/cygwin/var/git/example.git' is not a git command. See 'git --help'.
fatal: The remote end hung up unexpectedly

那我怎么做这个工作所以我可以推/拉/克隆?理想情况下,我希望能够使用Cygwin路径样式,例如。 git clone ssh://git@myserver/var/git/example.git

3 个答案:

答案 0 :(得分:1)

Dunno如果这个问题得到了解决,但我终于成功地将其付诸实践,并在另一个主题上分享了我的答案:

https://stackoverflow.com/a/10509588

答案 1 :(得分:0)

我最近遇到过类似的问题,因为cygwin git没有正常工作。我安装了msysgit。 然后,为了工作,我需要从msysgit shell做我所有的git工作。根据我的经验,大多数东西都在dos shell下工作,但推动却没有。我建议重新开始并使用msysgit bash shell克隆一个新的repo并将该shell用于所有git命令,然后推送可能会起作用。

答案 2 :(得分:0)

我也有这个问题,因为我正在运行Putty,WinSCP,TortoiseSVN和TortoiseGIT,他们之间共享选美。

我通过将Putty \ plink.exe中的GIT_SSH更改为TortoiseSVN \ bin \ TortoisePlink.exe来修复此问题 例如

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