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