Ipadala ang Isang GitPython Clone sa Pamamagitan ng HTTP Proxy
Ipasa ang proxy environment sa Repo.clone_from, pagkatapos suriin ang mga setting ng Git na maaaring mangibabaw dito.
Upang ipadala ang isang HTTPS clone sa pamamagitan ng proxy nang hindi binabago ang environment ng proseso ng Python o nagsusulat ng global na setting ng Git, ipasa ang mga variable sa 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',
},
)Gamitin ang proxy URL nang direkta sa mga string ng Python. Para sa pampublikong repository at ruta kung saan pinapayagan ang mga pampublikong proxy, ang listahan ng HTTP proxy ay nagbibigay ng mga kandidatong endpoint. Ang mga quote sa pagpapangkat ng shell ay hindi bahagi ng URL na iyon. Ang SSH repository URL ay sumusunod sa SSH transport, kaya ang halimbawang ito ay nangangailangan ng HTTPS repository URL.
Kung iba pa rin ang ruta ng Git
Ina-update ng env mapping ang environment na namamana ng subprocess ng Git; hindi nito pinapalitan ang environment na iyon ng walang laman. Suriin ang mga namamana na halaga ng no_proxy para sa bypass, at suriin ang sariling http.proxy configuration ng Git, na maaaring mangibabaw sa kaukulang setting ng environment.
Maaari ka ring makakita ng mga halimbawang nagpapasa ng config sa clone. Tinatawag nito ang opsyon na --config ng Git clone at nagsusulat ng configuration sa bagong repository. Piliin iyon kapag ang setting ay dapat na tumagal nang higit sa prosesong ito ng pag-clone; ipinapaliwanag ng configuration ng Git sa oras ng clone kumpara sa oras ng tawag lamang ang pagkakaiba.