Je souhaite extraire / mettre à jour le code via un proxy car ma connexion locale est lente. J'ai configuré le tunnel ssh: ssh -D 8090 [email protected]
pour transférer tous les paquets vers mon hôte local: 8090.
Comment puis-je configurer subversion pour l'utiliser?
Réponses:
Vous utilisez SSH pour configurer un serveur SOCKS local qui tunnelise vers votre serveur SSH. Vous mentionnez que votre raison pour cela est que "la connexion locale est lente" mais je ne vois pas comment le tunneling vers un serveur SSH le rendra plus rapide.
Quoi qu'il en soit, votre problème est que Subversion peut se connecter via un proxy HTTP ou un tunnel SSH, mais il n'a aucune idée de SOCKS. Vous devez donc SOCKSify Subversion en capturant toutes ses connexions TCP et en les redirigeant vers le proxy SOCKS.
Au lieu de paraphraser ceux qui l'ont déjà fait, je vais vous indiquer leurs explications détaillées:
Ou en un mot, principalement coupé et badigé de la page d'Oliver:
Debian contient deux socksifiers qui sont également disponibles sur sourceforge. La dernière mise à jour est ProxyChains, et sa configuration est assez simple. La plupart des chaussettes fonctionnent de manière similaire, ces instructions doivent donc être un cas général raisonnable. Pour configurer ProxyChains, il vous suffit de modifier $ (HOME) /. Proxychains / proxychains.conf pour n'avoir que les lignes suivantes:
Tout ce que vous avez à faire ensuite est de «wrap» svn dans ProxyChains.
Dans l'exemple ci-dessus, l'application svn n'était pas plus sage que ses connexions TCP au serveur Subversion étaient redirigées vers le bas de votre proxy SOCKS. "
la source
Publier ici, car j'ai trouvé un moyen moins compliqué de le faire. Vous pouvez utiliser Polipo pour utiliser votre tunnel SSH SOCKS sur proxy HTTP, en ajoutant les lignes suivantes à sa configuration:
polipo
écouter par défaut sur le port8123
. Et puis en$HOME/.subversion/servers
créer un groupe pour les hôtes de subversion que vous voulez vérifier à partir, par exemple si votre hôte dépôt subversion (s) sont nommésproj1.svn.domain.tld
,proj2.svn.domain.tld
etc., puis ajoutez ce qui suit à la[groups]
section:Et enfin, spécifiez une configuration proxy pour le groupe des hôtes que vous venez d'ajouter en ajoutant un bloc pour le groupe:
Après cela, vous devriez pouvoir fonctionner normalement sur le référentiel, car vous travailliez sans tunnel SSH.
HTH
la source
Je ne connais pas le tunneling
ssh -D
mais j'utilise quelque chose commeVous pouvez ensuite faire du tunneling en ajoutant un nouveau protocole à subversion avec le port particulier sur lequel le tunnel est. Donc, dans ~ / .subversion / config ajoutez une ligne comme
dans la
[tunnels]
section puis au lieu de svn + ssh: //[email protected] utilisez svn + pssh: // user @ localhostSi vous avez une copie de travail existante, vous pouvez utiliser
pour changer l'adresse à laquelle la copie de travail est liée sans avoir à effectuer une nouvelle extraction.
la source
svn co svn+ssh://code.somewhere.com/prj prj
, alors entrerprj/
et exécutersvn switch --relocate svn+ssh://code.somewhere.com svn+pssh://localhost/
mettra à jour le wc pour qu'il semble avoir été obtenu viasvn co svn+pssh://localhost/prj prj
Regardez les fichiers de configuration par défaut dans ~ / .subversion / Il existe de nombreux exemples utiles commentés. Les proxys seraient configurés dans ~ / .subversion / servers
la source
Il y a des occasions où il est nécessaire sur un PC Windows d'obtenir une connexion svn + ssh au référentiel SVN via le serveur proxy socks . Ce problème peut être résolu avec Putty qui fournit des fonctionnalités SSH et peut fonctionner avec différents types de proxy. La solution proposée ne nécessite pas de redirection de port locale.
Qu'est-ce que c'est - SVN utilisera le nom du protocole pour détecter que plink.exe doit être utilisé pour la connexion et plink utilisera le nom de session socks_proxy pour identifier la présence du proxy. N'oubliez pas que PATH_TO_PLINK doit être entré avec une barre oblique, pas avec une barre oblique inverse. Exemple de cas où plink.exe se trouve dans le dossier C: \ Program Files \ Putty: ssh = C: / Program Files / Putty / PLINK.EXE -load socks_proxy .
la source
Vous pourriez essayer les tsocks . Avec tsocks, vous le configurez pour utiliser les configurations SSH du proxy SOCKS puis exécutez svn comme ceci:
la source