Fir een HTTPS-Klon duerch en Proxy ze schécken, ouni d'Ëmgebung vum Python-Prozess ze änneren oder eng global Git-Astellung ze schreiwen, gitt d'Variabelen un 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',
    },
)

Benotzt d'Proxy-URL direkt an den Python-Strings. Fir e ëffentlecht Repository an e Wee, wou ëffentlech Proxye erlaabt sinn, bitt d'HTTP-Proxy-Lëscht Kandidat-Endpunkten. Shell-Gruppéierungs-Anféierungszeechen sinn net Deel vun där URL. Eng SSH-Repository-URL follegt dem SSH-Transport, dofir brauch dëst Beispill eng HTTPS-Repository-URL.

Wann Git nach ëmmer en anere Wee hëlt

D'env-Mapping aktualiséiert d'Ëmgebung, déi den Git-Subprozess ierft; se ersetzt déi Ëmgebung net duerch eng eidel. Kontrolléiert ierflech no_proxy-Wäerter op eng Ëmgoen, an dem Git seng eegen http.proxy-Konfiguratioun, déi déi entspriechend Ëmgebungsastellung iwwerschreiwe kann.

Dir kënnt och Beispiller fannen, déi config un de Klon ginn. Dat rifft d'Optioun --config vu Git clone op a schreift Konfiguratioun an dat neit Repository. Wielt dat nëmmen, wann d'Astellung dëse Klonprozess iwwerliewen soll; Git-Konfiguratioun beim Klonen géint nëmmen beim Opruff erkläert den Ënnerscheed.

Ähnlech Artikelen