Provedite jedan GitPython klon kroz HTTP proxy
Predajte proxy okruženje funkciji Repo.clone_from, pa provjerite Git postavke koje ga mogu nadjačati.
Da biste proveli jedan HTTPS klon kroz proxy bez promjene okruženja Python procesa ili pisanja globalne Git postavke, predajte varijable funkciji Repo.clone_from:
from git import Repo
repo = Repo.clone_from(
'https://git.example/team/project.git',
'/path/to/new-checkout',
env={
'http_proxy': 'http://proxy.example:8080',
'https_proxy': 'http://proxy.example:8080',
},
)Koristite proxy URL izravno u Python nizovima. Za javni repozitorij i rutu na kojoj su javni proxyji dopušteni, popis HTTP proxyja nudi kandidat-endpointove. Navodnici za grupiranje u shellu nisu dio tog URL-a. URL SSH repozitorija slijedi SSH transport, pa ovaj primjer zahtijeva HTTPS URL repozitorija.
Ako Git i dalje ide drugim putem
Preslikavanje env ažurira okruženje koje Git podproces nasljeđuje; ono ne zamjenjuje to okruženje praznim. Provjerite naslijeđene vrijednosti no_proxy zbog zaobilaženja i provjerite vlastitu Git konfiguraciju http.proxy, koja može nadjačati odgovarajuću postavku okruženja.
Možete sresti i primjere koji klonu predaju config. To poziva opciju --config naredbe Git clone i upisuje konfiguraciju u novi repozitorij. Odaberite to samo kada postavka treba nadživjeti ovaj proces kloniranja; Git konfiguracija u vrijeme kloniranja i samo u vrijeme poziva objašnjava razliku.