Ejecutamos un repositorio SVN. Algunos de nuestros usuarios más avanzados necesitan poder realizar alguna administración de SVN sin depender del administrador del sistema.
Deben ser capaces de hacer cosas como crear repositorios SVN, eliminar repositorios SVN, y ejecutar comandos como 'svnadmin dump' y 'svnadmin load'.
Nos gustaría evitar el acceso SSH en estas máquinas FreeBSD, y preferimos proporcionar una interfaz de servicio a través de una interfaz de usuario web.
Estoy buscando un script simple (o un pequeño número de scripts) que usan Perl o PHP. Encontré svnadmin (De Jochen Hoenicke) o svnadmin.pl (De doug munsinger), pero esperaba encontrar algo con una comunidad de usuarios más grande o que me hayan recomendado otros.
Parece que Trac permite la administración de SVN, pero viene con muchas más funciones de las que necesitamos.
fuente
Respuestas:
Respuesta tardía ya que soy nuevo en serverfault: nosotros (departamento de compsci de la universidad) desarrollamos nuestra propia interfaz web de autoservicio svn y la pusimos a disposición como código abierto. Nombrado repocafe, disponible en http://repocafe.cs.uu.nl/ . Modelado según nuestras propias necesidades, puede manejar servidores ldap únicos o múltiples y usuarios invitados. Tal vez un poco exagerado para 'simple'.
fuente
Al final, elegimos ir con svnadmin (De Jochen Hoenicke).
Esto ganó porque era un archivo simple y simple con 400 líneas de código, y es algo que podríamos solucionar si fuera necesario. Lamentablemente no tiene una comunidad de usuarios o muchas recomendaciones. Pero su simplicidad gana. Pregúntame en 6 meses si lo recomendamos;)
fuente
Trac y Redmine son los únicos dos que conozco que hacen esto bien; pero ambos apuntan más a la gestión de proyectos que a la simple administración de repositorios.
fuente
Hay un módulo Usermin para Subversion, pero no estoy seguro de que le permita hacer lo que necesita.
fuente
Hay "User friendly svn" USVN . Creo que encontrará que la mayor parte del esfuerzo de la comunidad para algo como esto es pequeño: SVN se mantiene de manera activa, pero las herramientas de administración son una parte que no. Tienden a escribirse una vez y funcionan para siempre, por lo que estas herramientas GUI tampoco necesitan cambiar. Entonces, no se preocupe demasiado por el tamaño de la comunidad en este caso.
fuente
Contestaré mi propia pregunta, para la posteridad.
También encontré USVN , que es una herramienta de administración SVN basada en PHP. Ha pasado por varias iteraciones, tiene una comunidad de usuarios y un sitio web brillante y lleno de funciones,
Sin embargo, el proyecto USVN parece un poco rancio. USVN fue un proyecto realizado por estudiantes de una universidad, y ahora los administradores se graduaron y buscaron trabajo, y es posible que ya no tengan tiempo para contribuir al proyecto. No ha habido una actualización en 9 meses, el rastreador de errores no parece activo, y los foros están llenos de spam y se ven un poco sin mantenimiento , por lo que tal vez la comunidad esté menos activa de lo que parece. Esto no es del todo malo y espero que a estas personas les vaya bien, pero me preocuparía engancharme a un proyecto obsoleto.
El proyecto utiliza 200 archivos (sin contar los 2000 archivos de Zend), lo que puede ser difícil de auditar y mantener, y puede ser más complejo de lo que estamos buscando. Además, este proyecto se basa en Zend, que sufre problemas políticos en FreeBSD .
fuente
Otra sugerencia de la lista de correo svn dev del 09 de diciembre, ¡así que es bastante reciente!
fuente
Hemos implementado esto con nuestra nueva distribución svn hace un año. Ha funcionado muy bien.
Tenemos múltiples equipos de desarrollo y sus propios proyectos. Entonces, trajimos toda la información a LDAP y le otorgamos a los gerentes de equipo acceso de escritura al árbol de información de directorio (DIT) para la subversión:
ou = grupos, ou = subversión, ou = aplicaciones, dc = ejemplo, dc = com ou = repositorios, ou = subversión, ou = aplicaciones, dc = ejemplo, dc = com
La unidad organizativa 'grupos' anterior es grupos personalizados para repositorios / proyectos de subversión. Además, utilizamos 'viewvc' con https para ver repositorios en svn.
El servidor apache usa un archivo ACL creado en base a DIT LDAP (dado anteriormente) para dar acceso de lectura y escritura a diferentes usuarios y grupos. Hay un cron que lee el DIT LDAP cada cinco minutos y crea el archivo ACL. Entonces, si hay nuevos repositorios agregados con usuarios / grupos de solo lectura y lectura-escritura. El cron leerá eso y creará los repositorios, e incorporará esa información en el archivo ACL para el repositorio recién creado. Es bastante ordenado. Obviamente, debe crear un esquema LDAP basado en sus requisitos. Tenemos toda la información de usuarios / hosts en LDAP, por lo que no fue un gran problema extenderla para incluir información de svn.
-F
fuente
Parece que las cosas han cambiado horas extras. Aquí hay otro script que creo que parece ser una buena opción para la administración de svn: http://www.svn-access-manager.org/
fuente