Git: HTTP-запрос не выполнен - PullRequest
       0

Git: HTTP-запрос не выполнен

18 голосов
/ 27 декабря 2011

У меня есть удаленный репозиторий с доступом HTTPS.

git status перечисляет только одну запись: master

git remote -v перечисляет две записи на один и тот же адрес: одну для выборки, одну дляpush

Но когда я выполняю git remote show origin или другие операции, такие как fetch, я получаю:

error: while accessing https:...
fatal: HTTP request failed

Я нахожусь за прокси, но, как это установлено в моем.gitconfig (sslVerify = no) и клонирование в порядке, я не думаю, что проблема в этом.

НО ... моя ОС (CentOS) была переустановлена.

Ответы [ 3 ]

29 голосов
/ 25 июня 2013

Если вы используете https: вместо git: для своего клона, вполне возможно, что он искажает сертификат CA, т. Е. У вас нет копии промежуточного сертификата для проверки вашего SSL-соединения. Я сталкивался с этим пару раз. Обычно в дистрибутивах Linux на основе Debian. Попробуйте

git config --global http.sslVerify false

и затем снова клон. Если клон работает, это то, что происходит. Однако это плохое решение, так как, конечно, отключает проверку SSL, что делает использование HTTPS несколько бессмысленным и делает вас уязвимыми для атак «человек посередине».

Что вам нужно сделать, это загрузить пакет CA Certificates для любой ОС, на которой вы работаете, в Linux (ну, в частности, в Debian / Ubuntu) это будет что-то вроде

apt-get install ca-certificates

1011 * тогда *

git config --global http.sslVerify true
git config --global http.sslCAinfo /etc/ssl/certs/ca-certificates.crt

хотя ваш путь к файлу сертификата может отличаться в зависимости от версии ОС.

Это должно заставить его работать.

3 голосов
/ 24 мая 2012

Я установил прокси-сервер http в переменной среды HTTP_PROXY (Git Bash в Windows), но только настройка прокси в моем% HOME% /. Gitconfig сработала:

[http]
    proxy = http://USERNAME:PASWORD@URL:PORT
0 голосов
/ 15 декабря 2016

У меня та же ошибка, но совсем другая проблема, чем упомянутая в остальных ответах. Я пытался клонировать репозиторий на Linux:

git clone http://xxx/scm/xxx/xxx.git
Initialized empty Git repository in /opt/git/xxx/.git/
Password:
error: Failed connect to xxx:80; Operation now in progress while accessing http://xxx.git/info/refs

fatal: HTTP request failed

Это все из-за неправильных прав доступа к папке - но git вместо некоторых разрешений выдает ошибку HTTP-запроса. Так что если кто-то столкнется с подобной проблемой - проверьте права доступа к папке!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...