Bruk ein proxy for eitt Git-depot
Set ein depotlokal HTTP-proxy, sjekk konfigurasjonen Git vel for fjern-URL-en, og fjern overstyringa når ho ikkje trengst lenger.
Du treng ikkje ein global Git-proxy berre fordi eitt prosjekt treng ei anna tilkopling. Ei eksisterande arbeidskopi har eigen lokal konfigurasjon, så endringa kan haldast i det depotet.
Døma brukar dei gjeldande git config set/get/unset-kommandoane. Prosjektmappa, fjern-URL-en og dokumentasjons-IP-en er plasshaldarar. For ein test av eit offentleg depot der offentlege proxyar er tillatne, vel ein kandidat frå lista over HTTP-proxyar.
git -C project config set --local http.proxy http://203.0.113.10:8080
git -C project ls-remote origin
Proxy-URL-en inneheld transportskjemaet. Ein HTTPS-fjernstad kan bruke ein vanleg HTTP-proxy som støttar CONNECT; HTTPS-skjemaet til fjernstaden krev ikkje at proxy-URL-en blir endra til HTTPS.
Sjekk kva Git faktisk valde
Er resultatet uventa, sjekk verdien som er vald for den faktiske fjern-URL-en:
git -C project config get --show-origin \
--url=https://example.com/team/project.git http.proxy
Bruk den verkelege HTTPS-fjernstaden din i spørjinga. Git kan ha system-, brukar-, depot-, kommandolinje- og URL-spesifikke innstillingar. Ser du berre på ein global http.proxy-verdi, kan du oversjå ein meir spesifikk regel. Opphavsutskrifta hjelper med å finne fila eller kommandolinjekjelda bak resultatet.
Den lokale innstillinga gjeld HTTP-basert tilgang frå depotet, ikkje berre ei bestemt grein. Eit depot med fleire HTTP-fjernstader kan difor bruke henne for fleire enn den først testa. URL-spesifikke HTTP-innstillingar finst om du treng snevrare samsvar.
Før arbeidskopien finst
For den første kloninga, vel om overstyringa skal vare; for å avgrense henne til det Git-kallet, bruk:
git -c http.proxy=http://203.0.113.10:8080 \
clone https://example.com/team/project.git
Kommandolinjeoverstyringa blir ikkje av seg sjølv ei varig oppføring i den nye arbeidskopien. Set ein lokal verdi etterpå om seinare fetch-operasjonar skal bruke den ruta.
Ein SSH-fjernstad er eit anna tilfelle
Ein fjernstad som startar med git@host: eller ssh://, brukar SSH. HTTP-proxyinnstillinga i Git gjer det ikkje til ei HTTP-overføring. Sjekk transporten til fjernstaden før du byter ei fungerande proxy-IP-adresse berre fordi ein SSH-operasjon framleis feilar.
Når den lokale overstyringa ikkje lenger er ønskt, fjern berre den nøkkelen:
git -C project config unset --local http.proxy
Då kjem aktuell konfigurasjon frå andre kjelder til bruk igjen. Dette er ikkje ein kommando som slettar alle proxyinnstillingar på maskina.