Pracuję na systemie Linux w środowisku Windows. Aby uwierzytelnić się z serwerem proxy NT, miałem skonfigurowany cntlm
i skonfigurowałem programy systemowe do korzystania z niego poprzez ustawienie zmiennej środowiskowej http_proxy
w pliku /etc/environment
.git odmawia połączenia bez proxy
Teraz chcę usunąć to ustawienie proxy i połączyć programy bezpośrednio.
Więc unset zmiennych środowiskowych systemu:
unset http_proxy
unset HTTP_PROXY
Sprawdź ~/.gitconfig
aby upewnić się, że nie istnieją żadne wpisy proxy.
Jawnie instruować git
nie używać żadnych proxy:
git config --global --unset http.proxy
git config --global --unset https.proxy
Sprawdź, czy nie proxy jest skonfigurowany:
git config --system --get https.proxy
git config --global --get https.proxy
git config --system --get http.proxy
git config --global --get http.proxy
a następnie wcisnąć do zdalnego repo:
git push
Ale git
nadal próbuje połączyć się przez proxy:
krytyczny: nie można dostępu 'https://[email protected]/xxx.git/': failed podłączyć do portu 127.0.0.1 3128: Connection refused
Dlaczego nie będzie puścić cntlm
?
czy sprawdziłeś, czy jest jakiś zestaw proxy? 'env | grep -i proxy' – VonC
@VocC Dzięki VonC. Myślałem, że usunąłem proxy przez 'unset http_proxy'. Istnieje jednak inna zmienna środowiskowa dla HTTPS, która musi być oddzielnie rozbrajana. Uruchomienie 'env | grep -i proxy' ujawniło, że. –
@VonC Usunąłem cntlm z systemu za pomocą 'apt-get remove cntlm'. Czy wiesz, jak mogę debugować, dlaczego (i skąd) zmienna jest teraz ustawiana? –