Uporabite posrednik za en repozitorij Git
Nastavite lokalni posrednik HTTP za repozitorij, preverite konfiguracijo, ki jo Git izbere za oddaljeni URL, in odstranite preglasitev, ko je ne potrebujete.
Globalni posrednik Git ni potreben samo zato, ker en projekt potrebuje drugačno povezavo. Obstoječa delovna kopija ima lastno lokalno konfiguracijo, zato lahko sprememba ostane v tem repozitoriju.
Primeri uporabljajo trenutne ukaze git config set/get/unset. Imenik projekta, oddaljeni URL in dokumentacijski IP so nadomestne vrednosti. Za test javnega repozitorija, kjer so javni posredniki dovoljeni, izberite kandidata s seznama posrednikov HTTP.
git -C project config set --local http.proxy http://203.0.113.10:8080
git -C project ls-remote origin
URL posrednika vključuje transportno shemo. Oddaljeni repozitorij HTTPS lahko uporablja običajen posrednik HTTP s CONNECT; shema HTTPS oddaljenega URL-ja ne zahteva spremembe URL-ja posrednika v HTTPS.
Preverite, kaj je Git dejansko izbral
Če je rezultat nepričakovan, preglejte vrednost, izbrano za dejanski oddaljeni URL:
git -C project config get --show-origin \
--url=https://example.com/team/project.git http.proxy
V poizvedbi uporabite pravi oddaljeni repozitorij HTTPS. Git ima lahko sistemske, uporabniške, repozitorijske, ukazne in URL-specifične nastavitve. Pregled samo globalne vrednosti http.proxy lahko spregleda natančnejše pravilo. Izpis izvora pomaga določiti datoteko ali vir v ukazni vrstici za rezultatom.
Lokalna nastavitev velja za dostop HTTP iz tega repozitorija, ne le za določeno vejo. Repozitorij z več oddaljenimi naslovi HTTP jo lahko uporablja tudi za druge poleg prvega testiranega. Za ožje ujemanje so na voljo URL-specifične nastavitve HTTP.
Preden delovna kopija obstaja
Pri začetnem kloniranju izberite, ali naj preglasitev ostane; da jo omejite na ta klic Git, uporabite:
git -c http.proxy=http://203.0.113.10:8080 \
clone https://example.com/team/project.git
Preglasitev v ukazni vrstici sama ne postane trajen konfiguracijski vnos v novi delovni kopiji. Pozneje nastavite lokalno vrednost, če naj prihodnji fetch uporablja to pot.
Oddaljeni repozitorij SSH je drug primer
Oddaljeni URL, ki se začne z git@host: ali ssh://, uporablja SSH. Nastavitev posrednika HTTP v Git ga ne spremeni v prenos HTTP. Pred zamenjavo delujočega IP-ja posrednika zgolj zaradi napake operacije SSH preverite transport oddaljenega URL-ja.
Ko lokalne preglasitve ne želite več, odstranite samo ta ključ:
git -C project config unset --local http.proxy
Odstranitev znova uveljavi ustrezno konfiguracijo iz drugih virov. To ni ukaz za izbris vseh nastavitev posrednika na računalniku.