Quiero verificar / actualizar el código a través del proxy ya que mi conexión local es lenta. Configuré el túnel ssh: ssh -D 8090 [email protected]
para reenviar todos los paquetes a mi host local: 8090.
¿Cómo puedo configurar subversion para usar esto?
Respuestas:
Está utilizando SSH para configurar un servidor SOCKS local que haga un túnel hacia su servidor SSH. Usted menciona que su razón para hacerlo es que "la conexión local es lenta", pero no veo cómo hacer un túnel a un servidor SSH lo hará más rápido.
De todos modos, su problema es que Subversion puede conectarse a través de un proxy HTTP o un túnel SSH, pero no tiene idea de SOCKS. Por lo tanto, necesita SOCKSify Subversion capturando todas sus conexiones TCP y redirigiéndolas al proxy SOCKS.
En lugar de parafrasear a los que lo han hecho antes, te señalaré sus explicaciones detalladas:
O, en pocas palabras, principalmente cortado y pegado de la página de Oliver:
Debian contiene dos calcetines que también están disponibles en sourceforge. El más reciente actualizado es ProxyChains, y es bastante sencillo de configurar. La mayoría de los calcetines funcionan de manera similar, por lo que estas instrucciones deben ser un caso general razonable. Para configurar ProxyChains solo necesita editar $ (HOME) /. Proxychains / proxychains.conf para tener solo las siguientes líneas:
Todo lo que necesita hacer es 'envolver' svn en ProxyChains.
En el ejemplo anterior, la aplicación svn no era más sabia de que su TCP se conecta al servidor Subversion se redirigió a través de su proxy SOCKS ".
fuente
Publicando aquí, ya que encontré una manera menos difícil de hacer esto. Puede usar Polipo para usar su túnel SSH SOCKS sobre proxy HTTP, agregando las siguientes líneas a su configuración:
polipo
por defecto escucha en el puerto8123
. Y luego, en$HOME/.subversion/servers
crear un grupo de anfitriones de subversión que desee comprobar hacia fuera de, por ejemplo, si su subversión repositorio central (s) se nombranproj1.svn.domain.tld
,proj2.svn.domain.tld
, etc, a continuación, añadir después a[groups]
la sección:Y finalmente especifique una configuración de proxy para el grupo de hosts que acaba de agregar agregando un bloque para el grupo:
Después de esto, debería poder operar en el repositorio normalmente, como solía trabajar sin túnel SSH.
HTH
fuente
No sé sobre hacer túneles
ssh -D
pero usar algo comoLuego puede hacer un túnel agregando un nuevo protocolo a subversion con el puerto particular en el que se encuentra el túnel. Entonces, en ~ / .subversion / config agregue una línea como
en la
[tunnels]
sección y luego en lugar de svn + ssh: //[email protected] use svn + pssh: // user @ localhostSi tiene una copia de trabajo existente, puede usar
para cambiar la dirección a la que está vinculada la copia de trabajo sin tener que hacer un nuevo pago.
fuente
svn co svn+ssh://code.somewhere.com/prj prj
, al entrarprj/
y ejecutarsvn switch --relocate svn+ssh://code.somewhere.com svn+pssh://localhost/
se actualizará el wc para que parezca que se ha obtenido a través desvn co svn+pssh://localhost/prj prj
Mire los archivos de configuración predeterminados en ~ / .subversion / Hay muchos ejemplos útiles comentados. Los proxies se configurarían en ~ / .subversion / Server
fuente
Hay ocasiones en que se requiere en una PC con Windows para obtener una conexión svn + ssh al repositorio SVN a través del servidor proxy de calcetines . Este problema se puede resolver con Putty, que proporciona la funcionalidad SSH y puede funcionar con diferentes tipos de proxy. La solución propuesta no requiere reenvío de puerto local.
Qué es: SVN usará el nombre del protocolo para detectar que plink.exe debe usarse para la conexión y plink usará el nombre de sesión socks_proxy para identificar que el proxy está presente. Recuerde que PATH_TO_PLINK debe ingresarse con barra diagonal, no con barra diagonal inversa. Ejemplo para ocasiones cuando plink.exe se encuentra en la carpeta C: \ Archivos de programa \ Putty: ssh = C: / Archivos de programa / Putty / PLINK.EXE -load socks_proxy .
fuente
Puedes probar tsocks . Con tsocks, lo configura para usar el proxy SOCKS que configura SSH y luego ejecuta svn de esta manera:
fuente