2010-01-06 8 views
5

¿Cómo puedo configurar el servidor de subversión para ocultar la ruta completa del repositorio del mundo exterior? Por ejemplo, el repositorio vive en /home/svn/foobar/ ... Quiero acceder a él a través de ssh como svn+ssh://[email protected]/foobar.Subversion ocultar la ruta del repositorio

+0

Ver http://serverfault.com/questions/100029/subversion-hide-repository-path en ServerFault –

Respuesta

3

lectura cuidadosamente a través de la documentación oficial SVN He encontrado que cuando se accede a la subversión durante svn + ssh - entonces un proceso svnserve separado se genera para cada conexión. Así, el truco está en

  1. Renombrar svnserve a svnserve.bin
  2. Crear un archivo llamado svnserve
  3. Añadir lo siguiente a su contenido

    #!/bin/sh 
    exec /usr/bin/svnserve.bin -r /home/svn "[email protected]" 
    

Así, el envoltorio se llamará cada vez una instancia de servidor es necesaria. A su vez, iniciará el servidor con una nueva ruta raíz.

Piece of cake!

+0

Otra opción que no requiere cambiar el nombre del binario es poner el script de shell en svnserve/usr/local/bin, que (en mi cuadro) es anterior en la lista PATH. – dhowland

0

Puede utilizar el protocolo HTTP (S) en lugar de SSH. Y luego, configure Apache con cualquier directorio virtual que desee.

2

Utilice la opción --root:

svnserve --root /home/svn 
Cuestiones relacionadas