Git de contournement de proxy

git fonctionne dans un environnement mandaté en paramétrant le http.proxy paramètre de configuration.

pour certaines adresses, je dois contourner le mandataire. Y a-t-il un paramètre de configuration sans-proxy/bypass-proxy?

42
demandé sur yannisf 2013-05-14 12:28:21

6 réponses

le proxy peut être annulé à distance - voir http://git-scm.com/docs/git-config (cherchez le "http".proxy" et "à distance.proxy"). En supposant que vous avez la télécommande appelée "origin", alors la commande que vous pouvez utiliser pour contourner le proxy pour cette télécommande est:

git config --add remote.origin.proxy ""
60
répondu Jan Gutvirth 2013-05-17 15:10:45

pour contourner le proxy pour certains, habituellement une adresse locale, tout ce que vous devez faire est:

export no_proxy=URLToIgnore

URLToIgnore est L'URL que vous voulez que Git ignore. Vous pouvez aussi ignorer les URL se terminant par un certain mot.

export no_proxy=.mylocal

où toutes les URL se terminant par .mylocal seront ignorées. Pour ignorer plusieurs URLs:

export no_proxy=.mylocal URLToIgnore

pour le rendre permanent, ajoutez-le à votre fichier ~/username/.bash_profile . Si vous ne pouvez pas trouvez le fichier .bash_profile dans votre répertoire root utilisateur, puis créez-le manuellement.

pour plus de détails: comment désactiver temporairement git mandataire http

26
répondu Yas T. 2017-05-23 12:26:24

assurez-vous d'avoir un Git 2.1.2+ si vous voulez définir une configuration à une valeur vide, comme

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

parce que si vous décidez de restaurer un proxy pour cette télécommande (ici ' origin ')... il erreur de segmentation avec un Git de plus que 2.1.2 (Sept. 30, 2014)

voir commit c846664 ( tanayabh )

make config --add se comporter correctement pour les valeurs "vide" et NULL 1519280920"

actuellement si nous avons un fichier de configuration comme,

[foo]
        baz
        bar =

et nous essayons quelque chose comme, " git config --add foo.baz roll ", Git va erreur de segmentation. De plus, pour " git config --add foo.bar roll ", il écrasera la valeur originale au lieu de l'ajouter après la valeur vide existante.

le problème réside dans le regexp utilisé pour simuler --add dans git_config_set_multivar_in_file() , " ^$ ", qui dans le cas idéal ne devrait pas correspondre avec une chaîne de caractères mais est vrai pour les chaînes vides.

Utilisez plutôt un regexp comme " a^ " qui ne peut pas être vrai pour n'importe quelle chaîne, vide ou pas.

pour supprimer le segfault ajouter un contrôle pour NULL valeurs dans matches() dans config.c .

5
répondu VonC 2014-11-11 20:28:58

en raison du rôle de L'utilisateur Windows / Unix, si vous ne pouvez pas éliminer le http_proxy de la ligne de commande, s'il vous plaît essayer cette approche -

git config -l --show-origin

qui imprimera les configurations basées sur les fichiers selon la hiérarchie. Maintenant, allez dans fichier spécifique (locales .git / config folder file) et mettre à jour / supprimer le http_proxy.

Espérons que cette aide.

0
répondu Riddhi Sanyal 2018-07-26 12:24:13
export http_proxy=http://username:password@ip:port
export no_proxy=myhost, myhost:port
-1
répondu Seven 2017-07-10 03:38:51

juste exécuter la commande ci-dessous à l'invite de commande

git config --global http.proxy [Proxy IP]:[Proxy port]
-2
répondu Dheeraj Pure 2017-05-18 15:39:57