Stuur een GitPython-kloon deur 'n HTTP-proxy
Gee 'n proxy-omgewing aan Repo.clone_from deur en kontroleer dan die Git-instellings wat dit kan oorheers.
Om een HTTPS-kloon deur 'n proxy te stuur sonder om die Python-proses se omgewing te verander of 'n globale Git-instelling te skryf, gee die veranderlikes aan Repo.clone_from deur:
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',
},
)Gebruik die proxy-URL direk in die Python-stringe. Vir 'n publieke pakket en 'n roete waar publieke proxies toegelaat word, verskaf die HTTP-proxylys kandidaat-eindpunte. Skulp-groeperingstekens is nie deel van daardie URL nie. 'n SSH-pakket-URL volg eerder die SSH-transport, so hierdie voorbeeld vereis 'n HTTPS-pakket-URL.
As Git steeds 'n ander roete neem
Die env-afbeelding werk die omgewing by wat die Git-subproses erf; dit vervang nie daardie omgewing met 'n leë een nie. Kontroleer geërfde no_proxy-waardes vir 'n omleiding, en kontroleer Git se eie http.proxy-konfigurasie, wat die ooreenstemmende omgewingsinstelling kan oorheers.
Jy kan ook voorbeelde teëkom wat config aan die kloon deurgee. Dit roep Git-kloon se --config-opsie aan en skryf konfigurasie in die nuwe pakket. Kies dit net wanneer die instelling hierdie kloonproses moet oorleef; kloontyd teenoor slegs-aanroeping Git-konfigurasie verduidelik die verskil.