Я пытаюсь получить доступ к репозиторию на Github с машины Windows, которая находится за прокси-сервером, требующим аутентификации NTLM. Ни SSH, ни протокол git: // напрямую недоступны, поэтому я м пытаюсь заставить эту работу работать с HTTPS через прокси.
С помощью NTLM прокси без пароля? Мне удалось заставить двоичный файл curl
, поставляемый с msysgit, играть хорошо с прокси:
curl -U : --proxy-ntlm --proxy xxx.xxx.xx.xx:8080 https://github.com
Это успешно и возвращает домашнюю страницу Github.
Тем не менее, я нашел статью от февраля 2010 г. Проксирование Git , в которой говорится (выделено мной):
К сожалению, похоже этот curl всегда будет использовать обычную проверку подлинности с прокси. Если вашему прокси-серверу нужно что-то еще, например NTLM для сети Windows, то у вас проблема . Curl используется для обработки всех деталей http-транспорта, и он поддерживает метод аутентификации NTLM, но я не знаю способа передать необходимые параметры в curl. Git использует curl через привязку своей библиотеки, поэтому недостаточно просто заменить исполняемый файл curl сценарием-оболочкой.
Я знаю о параметре core.gitproxy
в конфигурации Git, но он кажется применять только к протоколу git: //. Точно так же опция http.proxy
устанавливает адрес прокси, но не дает возможности указать соответствующие опции для curl.