Git push / pull пути не работают в windows origin с запущенным msysgit + cygwin sshd - PullRequest
3 голосов
/ 13 февраля 2012

В попытке решить проблему, с которой я столкнулся: при управлении веб-сайтом в Windows с помощью git я установил Cygwin openssh и Git для Windows (msysgit) на сервере Windows 2008 (назовем это myserver ).

У меня есть пустая настройка git-репо по пути cygwin /var/git/example.git, который соответствует c:\cygwin\var\git\example.git в Windows.

У меня есть пользователь git, у которого есть права на папки репо.

Я могу войти в систему с помощью git, используя аутентификацию на основе ключей, до myserver с моей рабочей станции XP, используя Putty. У меня открыт ключ в конкурсе.

Я могу использовать пути в стиле cygwin в Putty, например, 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

Работает, репо клонируется.

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 ]

1 голос
/ 09 мая 2012

Не знаю, если это было решено, но мне, наконец, удалось заставить это работать, и поделился своим ответом в другой теме:

https://stackoverflow.com/a/10509588

0 голосов
/ 02 октября 2013

У меня также была эта проблема, потому что я запускаю Putty, WinSCP, TortoiseSVN и TortoiseGIT с общим конкурсом между ними.

Я исправил эту проблему, изменив GIT_SSH с Putty \ plink.exe на TortoiseSVN \ bin \ TortoisePlink.exe например.

set GIT_SSH=C:\Program Files\TortoiseSVN\bin\TortoisePlink.exe
0 голосов
/ 17 февраля 2012

В последнее время я сталкивался с подобными проблемами, когда Cygwin Git работал некорректно. Я установил msysgit. Затем, чтобы все заработало, мне нужно выполнить всю свою работу с git из оболочки msysgit. Из моего опыта большинство вещей работает под доской оболочки, но толкание не делает. Я рекомендую начать заново и использовать оболочку msysgit bash для клонирования нового репозитория и использовать эту оболочку для всех команд git, тогда, вероятно, push будет работать.

...