Question

Je suis derrière un pare-feu qui bloque le port 9418 (git) et essaie d'installer des outils qui font explicitement une caisse de git://github.com/..., donc je ne peux pas passer à https pour l'achat.

Je me demande s'il est possible de rediriger tout le trafic vers le port 9418 via un proxy et si oui, comment:)

Était-ce utile?

La solution

Jetez un oeil à réglage core.gitproxy Git config .

googler rapide a révélé ce script qui peut être utile (ou non - je ne l'ai pas essayé): https: / /gist.github.com/49288

Autres conseils

Si vous parlez de sous-modules git, essayez ceci:

git config --global url.https://github.com/.insteadOf git://github.com/

... tirée de .

De cette façon, vous n'avez pas besoin de définir une procuration, ni exécuter un script.

Avez-vous essayé un tunnel TCP basé ssh-? Si vous avez un serveur SSH (a) est en dehors de votre pare-feu et (b) permet la transmission IP, vous pouvez faire:

ssh -L localhost:9418:<remote>:9418 me@remote-ssh-server

ou, si vous devez exécuter sshd sur le port 443 pour contourner votre pare-feu,

ssh -P 443 -L localhost:9418:<remote-host>:9418 me@remote-ssh-server

Ensuite, au niveau local:

git checkout git://localhost/...

Il est évident que ce n'est pas transparent, et il est un peu alambiquée - il n'y a pas d'outils de doute là-bas qui sont plus spécifiquement ciblés sur le problème. Cependant, j'utilise généralement cette méthode car elle utilise des outils que je dois la main (ssh et un serveur virtuel cheapo Je loue).

(je l'ai en fait jamais essayé cela avec une connexion git, mais je ne vois pas pourquoi cela ne fonctionnerait pas. Je l'ai utilisé avec beaucoup d'autres protocoles unique port TCP sans problème.)

Vous devez faire le point de core.gitProxy à une commande proxy qui reliera git au serveur à distance via votre proxy SOCKS. Vous pouvez créer un script avec le contenu suivant pour servir de proxy commande:

nc -x <your_proxy_host>:<your_proxy_port> $1 $2

Les deux paramètres, ce qui représente l'hôte distant et le port, seront transmises à la commande par proxy git. Si vous nommez ce script git-proxy et la rendre accessible à partir de votre $PATH, vous pouvez appeler git config pour le définir:

git config --global --add core.gitProxy git-proxy
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top