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?
6 réponses
le proxy peut être annulé à distance - voir http://git-scm.com/docs/git-config
(cherchez le "http".proxy" et "à distance.
git config --add remote.origin.proxy ""
pour contourner le proxy pour certains, habituellement une adresse locale, tout ce que vous devez faire est:
export no_proxy=URLToIgnore
où 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
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
.
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
.
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.
export http_proxy=http://username:password@ip:port
export no_proxy=myhost, myhost:port
juste exécuter la commande ci-dessous à l'invite de commande
git config --global http.proxy [Proxy IP]:[Proxy port]