¿Cuál es el nombre del proceso del servidor Subversion en MacOS?

2

Estoy ejecutando un servidor Subversion en MacOS. Mis IDE remotos no conectan ningún problema ( mediante ssh tunneling ). Pero no puedo averiguar el nombre del proceso del servidor de Subversion.

Es muy fácil:

$ mkdir svnroot
$ svnadmin create /Users/johndoe/dev/svnroot
$ svn checkout svn+ssh://jdoe-macbook/Users/johndoe/dev/svnroot

Pero voy a buscar el servidor como tal:

$ sudo ps -eal | grep svn

no devuelve nada. Y ninguno de los procesos enumerados en Activity Manager se me presentan como algo que podría ser un servidor de Subversion.

Para hacer que ssh tunneling funcione, tuve que hacer ajustes en Preferencias del sistema - > Compartir . El servidor ssh está involucrado primero. Pero entonces, ¿a qué se está conectando ssh para administrar los repositorios de Subversion?

    
pregunta Khae 04.04.2018 - 03:19

1 respuesta

3

Cuando túnel sobre ssh usando svn checkout svn+ssh://.. , el cliente svn está ejecutando svnserve -q -t durante la duración de cada conexión ssh y luego cierra svnserve cuando se cierra la conexión.

Si desea ver esto en acción, intente abrir dos sesiones de Terminal:

  • En la sesión de Terminal 1, ejecute un comando svn con el protocolo svn+ssh:// . Suponiendo que no haya guardado ninguna identidad ssh en su ssh-agent , esto debería hacer una pausa para que ingrese su contraseña: svn checkout svn+ssh://localhost/Users/johndoe/dev/svnroot .

  • Ahora cambie a la sesión 2 de la Terminal. Debería poder encontrar al menos un proceso svnserve abierto a través de: ps -ef | grep svnserve .

    Por ejemplo, debería ver un proceso de coincidencia similar a:

    501 12869 12856 0 6:06pm ttys001 0:00.03 ssh -q -- localhost svnserve -t

  • Si regresa a la sesión de Terminal 1 y completa o cancela el comando svn , la sesión ssh asociada y el proceso svnserve se cerrarán.

Nota: si te estás conectando a un repositorio local, puedes usar el protocolo file:// en lugar de hacer un túnel para volver a localhost a través de ssh .

Por ejemplo: svn checkout file://localhost/Users/johndoe/dev/svnroot

    
respondido por el Stennie 04.04.2018 - 10:29

Lea otras preguntas en las etiquetas