
Я настроил репозиторий Gerrit на нестандартном порту 10002. Я сгенерировал свой пароль HTTP в Gerrit. Я могу успешно клонировать этот репозиторий по протоколу HTTP на машинах Unix и на большинстве Windows. Однако я не могу клонировать его на некоторых экземплярах Windows (Windows 7):
$ git clone http://[email protected]:10002/my-repo
Cloning into 'my-repo'...
fatal: unable to access 'http://[email protected]:10002/my-repo': The requested URL returned error: 403
Клонирование через SSH работает без проблем. Мне нужен работающий HTTP-клон, потому что мне нужно клонировать этот репозиторий не только на многих машинах без моего закрытого ключа.
Я пробовал отключать Windows Firewall и Microsoft Security Essentials. Неработающие экземпляры не имеют установленного антивируса.
Как проверить, что блокирует соединение с репозиторием?
Этот вопросне помогает.
решение1
Я проверил логи доступа к моему серверу. С Msysgit, версия Git-1.9.5-preview20150319
была:
185.28.251.241 - - [28/May/2015:19:31:17 +0200] "GET /my-repo/info/refs?service=git-upload-pack HTTP/1.1" 401 458 "-" "git/1.9.5.msysgit.1"
185.28.251.241 - - [28/May/2015:19:31:22 +0200] "GET /my-repo/info/refs?service=git-upload-pack HTTP/1.1" 403 290 "-" "git/1.9.5.msysgit.1"
После того, как я понизил Msysgit до предыдущей версии Git-1.9.5-preview20141217
, репозиторий может быть успешно клонирован. Журналы доступа тогда будут следующими:
185.28.251.241 - - [28/May/2015:19:42:08 +0200] "GET /my-repo/info/refs?service=git-upload-pack HTTP/1.1" 401 458 "-" "git/1.9.5.msysgit.0"
185.28.251.241 - - [28/May/2015:19:42:08 +0200] "GET /my-repo/info/refs?service=git-upload-pack HTTP/1.1" 200 1193 "-" "git/1.9.5.msysgit.0"
185.28.251.241 - - [28/May/2015:19:42:08 +0200] "POST /my-repo/git-upload-pack HTTP/1.1" 200 80403 "-" "git/1.9.5.msysgit.0"
Поэтому для меня решением было понизить версию Msysgit до1.9.5-превью20141217или обновить доGit для Windows 2.x- они оба работают.
Также смсвязанная проблема.