Git не работает с удаленным сервером - PullRequest
1 голос
/ 02 августа 2011

У меня установлен и работает git, как и ожидалось, в моей локальной системе или в сетевой папке, но я не смог получить доступ к удаленному пустому репозиторию на моем сервере с помощью ssh.

Я установил msysgit и CopSSH на сервер и msysgit, putty и tortoisegit в моей локальной системе. Я могу открыть сеанс замазки или успешно использовать plink - по крайней мере, я считаю, что plink успешен, но об этом чуть позже.

Когда я пытаюсь клонировать удаленный репозиторий, я получаю следующее:

D:\Temp> git clone uname@server:e:/path/test.git Test
Cloning into Test...
fatal: protocol error: bad line length character: Micr

Сообщение об ошибке некоторое время было постоянным, но время от времени (от одной попытки переустановки до другой) последними четырьмя символами будут «Micr», «Allo» или что-то еще, что я сейчас не помню. В текущем установленном состоянии это «Micr».

Итак, главный вопрос в том, что я делаю неправильно?

Хотя я полагаю, что было бы намного проще исправить то, что было неправильно, если бы я мог получить реальное сообщение об ошибке вместо общего, за которым следовали бы первые четыре символа фактического сообщения об ошибке. Любая идея, если это возможно?

1 Ответ

3 голосов
/ 02 августа 2011

Во-первых, у вас есть переменные, такие как export GIT_TRACE=1 и export GIT_TRACE_PACKET=1, которые могут помочь при отладке подобных ситуаций.

Во-вторых, эта ошибка часто вызывается любым видом отображения, выполняемым во время сеанса ssh (см., Например, этот поток ), например .bashrc на стороне сервера с эхом в нем.

У меня есть оболочка для ssh, которая устанавливает заголовок окна оболочки в аргумент команды ssh. Вот что все портит!

См. Также FAQ по Git

Другие причины включают в себя:


Примечание: с Git 2.6+ (3 квартал 2015 г.) см. Также «GIT_TRACE_PACKFILE».

...