У меня была та же проблема, но с немного другим исправлением: ПЕРЕГОТОВКА GIT С ПОДДЕРЖКОЙ HTTP
Протокол git:
не работал через мой корпоративный брандмауэр.
Например, этот тайм-аут:
git clone git://github.com/miksago/node-websocket-server.git
curl github.com
работает просто отлично, поэтому я знаю, что моя переменная окружения http_proxy
верна.
Я пытался использовать http
, как показано ниже, но сразу получил ошибку.
git clone http://github.com/miksago/node-websocket-server.git
->>> fatal: Unable to find remote helper for 'http' <<<-
Я попытался перекомпилировать git так:
./configure --with-curl --with-expat
но все равно получил фатальную ошибку.
Наконец, после нескольких разочаровывающих часов, я прочитал файл конфигурации,
и увидел это:
# Определить CURLDIR = / foo / bar, если ваш заголовок curl и файлы библиотеки находятся в
# / foo / bar / include и / foo / bar / lib.
Я вспомнил тогда, что я не выполнил curl
из источника, и так пошел
ищу файлы заголовков. Конечно же, они не были установлены. Это была проблема. Make не жаловался на отсутствующие заголовочные файлы. Так
Я не понимал, что опция --with-curl
ничего не сделала (это фактически значение по умолчанию в моей версии git
).
Я сделал следующее, чтобы исправить это:
Добавлены заголовки, необходимые для make:
yum install curl-devel
(expat-devel-1.95.8-8.3.el5_5.3.i386 was already installed).
Удалено git
из /usr/local
(так как я хочу, чтобы новая установка существовала там).
Я просто удалил git*
из /usr/local/share
и /usr/local/libexec
Поиск включенных каталогов, содержащих заголовочные файлы curl
и expat
, а затем (поскольку я прочитал configure
) добавил их в среду следующим образом:
export CURLDIR=/usr/include
export EXPATDIR=/usr/include
Ран configure
со следующими параметрами, которые, опять же, были описаны в самом файле configure
, и были также значениями по умолчанию, но какого черта:
./configure --with-curl --with-expat
А теперь http
работает с git
через мой корпоративный брандмауэр:
git clone http://github.com/miksago/node-websocket-server.git
Cloning into 'node-websocket-server'...
* Couldn't find host github.com in the .netrc file, using defaults
* About to connect() to proxy proxy.entp.attws.com port 8080
* Trying 135.214.40.30... * connected
...