So deaktivieren Sie vorübergehend den HTTP-Proxy von Git

Lesezeit: 2 Minuten

So deaktivieren Sie vorubergehend den HTTP Proxy von Git
David

Ich verwende Git hinter einer Unternehmensfirewall und klone erfolgreich externe Projekte, indem ich die http.proxy –global-Konfiguration verwende.

Mein Problem tritt auf, wenn ich über http im Intranet klonen möchte. Ich vermute, dass die Proxy-Konfiguration die Intranet-Anfrage stört.

Ich weiß, dass ich die Konfiguration zurücksetzen könnte, bevor ich das Intranet verwende, aber das ist nicht sehr benutzerfreundlich.

Ich habe diese Antwort auch gesehen, aber sie scheint nur für ein vorhandenes Repository zu gelten.

Gibt es eine Möglichkeit, die Proxy-Nutzung nur für einen Befehlsaufruf zu deaktivieren? In diesem Fall der ursprüngliche Klon?

So deaktivieren Sie vorubergehend den HTTP Proxy von Git
VonC

Ich stelle immer ein:

no_proxy=.mycompany

(export wenn ich auf Unix bin, oder eine einfache set unter Windows)

Es reicht aus, den Proxy für alle Intranet-URLs zu umgehen, die mit “.mycompany“.

Siehe für ein Beispiel:

  • „Update/Installation mit Composer hinter einer Unternehmens-Firewall nicht möglich“
  • „Nur für bestimmte Git-URLs/Domains einen Proxy verwenden?“
  • “Nicht können git-svn fetch hinter dem Proxy”

Ich verwende es in meinem eigenen Projekt: .proxy.example:

export http_proxy=http://username:[email protected]:port
export https_proxy=http://username:user[email protected]:port
export no_proxy=.company localhost

  • Ich wünschte, ich könnte es mehrmals abstimmen! Ich habe Tage damit verbracht, dieses verdammte Ding herauszufinden! Danke mann!

    – Ja Tabasam

    25. März 14 um 21:09 Uhr

1644319809 921 So deaktivieren Sie vorubergehend den HTTP Proxy von Git
thdoan

Was ich gerne mache, ist zwei Git-Aliase festzulegen:

~/.gitconfig

[alias]
        noproxy = config --global --remove-section http
        proxy = config --global http.proxy http://127.0.0.1:9666

Beachten Sie, dass ich nicht verwendet habe config --global --unset http.proxy den Proxy zurückzusetzen, denn das hinterlässt das [http] Abschnittsüberschrift, also nach wiederholtem Aktivieren und Deaktivieren des Proxys Ihre .gitconfig wird mit einem Haufen leerer verschmutzt [http] Abschnittsüberschriften. Keine große Sache, aber es nervt einfach.


In einigen Fällen, z. B. hinter Unternehmensfirewalls, müssen Sie konfigurieren ~/.ssh/config stattdessen. Die Einrichtung wird etwas komplizierter:

~/.gitconfig

[alias]
        noproxy = !sh -c 'cp ~/.ssh/config.noproxy ~/.ssh/config'
        proxy = !sh -c 'cp ~/.ssh/config.proxy ~/.ssh/config'

~/.ssh/config.noproxy

Host github.com-username
  HostName github.com
  User git
  IdentityFile ~/.ssh/id_rsa

~/.ssh/config.proxy

Host *
  ProxyCommand connect -H 127.0.0.1:9666 %h %p

Host github.com-username
  HostName github.com
  User git
  IdentityFile ~/.ssh/id_rsa

Sie können die beiden Methoden sogar kombinieren, indem Sie die Aliase wie folgt ändern:

[alias]
        noproxy = !sh -c 'git config --global --remove-section http 2> /dev/null && cp ~/.ssh/config.noproxy ~/.ssh/config'
        proxy = !sh -c 'git config --global http.proxy http://127.0.0.1:9666 && cp ~/.ssh/config.proxy ~/.ssh/config'

Jetzt kann ich einfach tippen git noproxy um den Proxy zu deaktivieren und git proxy um es zu ermöglichen. Sie können sogar zwischen mehreren Proxys wechseln, indem Sie weitere Aliase erstellen.

So deaktivieren Sie vorubergehend den HTTP Proxy von Git
bimalmampatta

In meinem Fall konnte ich Git-Clone-Anforderungen, die über den Proxy gehen, in meiner Unternehmenseinstellung durch Ausführen deaktivieren

git config --global --add remote.origin.proxy ""

Gemäß der Git-Dokumentation deaktiviert dies alle Anfragen an dieses Remote-Repository mit dem Namen origin.

.

822080cookie-checkSo deaktivieren Sie vorübergehend den HTTP-Proxy von Git

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy