¿Cómo configuro y accedo a mi repositorio de Subversion después de instalar Subversion en mi servidor dedicado GoDaddy CentOS?

StackOverflow https://stackoverflow.com/questions/8814659

Pregunta

Instalé subversion con éxito en mi servidor.Cuando ejecuto el comando:

which svn

Recibo la respuesta:

/usr/bin/svn

Creo un repositorio dentro de mi directorio raíz que es mi carpeta httpdocs con el siguiente comando:

svnadmin create ~/svn

Creé con éxito los siguientes archivos y carpetas y los configuré y veo los siguientes archivos y directorios dentro del directorio svn:

conf  db  format  hooks  locks  README.txt

Pero no puedo crear directorios troncales, de ramas y de etiquetas.De hecho, no puedo crear directorios y punto.Aquí está el comando que he estado usando:

svn mkdir file:///httpdocs/svn/site

Cuando hago este comando el mensaje que me sale es el siguiente:

svn: Could not use external editor to fetch log message; consider setting the
$SVN_EDITOR environment variable or using the --message (-m) or --file (-F) options
svn: None of the environment variables SVN_EDITOR, VISUAL or EDITOR are set, and no
'editor-cmd' run-time configuration option was found

También cuando escribo la URL:

http://mydomain.com/svn

Recibo el siguiente mensaje:

404 - Not Found 

¿Qué debo hacer para configurar mi repositorio? Verificar si mi repositorio realmente está funcionando.Ah, y ejecuté el siguiente comando:

svnserve -d
¿Fue útil?

Solución

Creo un repositorio dentro de mi directorio raíz que es mi carpeta httpdocs con el siguiente comando...

No es así como consigues que Subversion funcione con Apache httpd si eso es lo que estás intentando hacer.Necesita los módulos mod_dav y mod_dav_svn para Apache.Es posible que tengas que recompilar Apache para obtenerlos.

Una vez que haya instalado mod_dav y mod_dav_svn, necesitará configurar su archivo httpd.conf (o colocar un archivo de configuración debajo de su httpd). conf.d dependiendo de cómo esté configurado en su sistema) para que funcione.

Al final, no es tan difícil.La mayoría de las instalaciones de Apache tienen mod_dav y mod_dav_svn agregados, y puede ver si su archivo http.conf está configurado correctamente.El manual de Subversion en línea tendrá todo lo que necesitas para que funcione.

svn:No se pudo utilizar el editor externo para recuperar el mensaje de registro;Considere establecer la variable de entorno $ svn_Editor o usar las opciones--Message (-m) o--File (-f) Svn:Ninguna de las variables de entorno SVN_EDITOR, Visual o Editor está configurado, y no se encontró la opción de configuración de tiempo de ejecución de 'Editor-CMD'

Leer el mensaje.Dice No se pudo utilizar el editor externo porque no especificaste ninguno.Nuevamente el manual en línea de Subversion lo explica en detalle.

Básicamente, cuando confirmas un cambio en Subversion, necesitas crear un mensaje de confirmación.Esto se puede hacer de dos formas:

  • tu usas el -m opción como svn commit -m "This is my commit message".
  • Tu estableces las variables SVN_EDITOR, VISUAL, o EDITOR al nombre del programa que desea utilizar.Por ejemplo, en Windows, dirías C:> set EDITOR=notepad.exe.En Unix, dirías algo como $ export EDITOR=vi.Subversion primero verifica el valor del SVN_EDITOR variables, entonces VISUAL, entonces EDITOR.Si ninguno de ellos está configurado, le dará el error que vio.

¿Por qué lo pusiste en el svn mkdir ¿dominio?

Debido a que utiliza la forma URL del comando, creará el directorio y luego confirmará el cambio, de ahí la necesidad de un mensaje de confirmación.Esto debería funcionar:

svn mkdir -m"Adding the site directory to my repository" file:///httpdocs/svn/site

Ahora, necesita sacar su repositorio de su directorio HTTPDOC.Es algo muy malo porque daña su servidor web.

Si no quieres usar el file:// protocolo, puede utilizar svnserve.Este es un servidor de repositorio integrado de Subversion y utiliza el svn:// protocolo.Observar:

$ svnadmin create my_repos   #Creates the repository
$ vi my_repos/conf/svnserve.conf  #See footnote 1 below
$ vi my_repos/conf/passwd         #See footnote 1 below
$ svnserve -r my_repos -d
$ svn mkdir -m "Making basic directory layout svn://localhost/trunk \
> svn://localhost/tags svn://localhost/branches
$ export SVN_EDITOR="vi"

Su repositorio también será accesible para todas las máquinas de su red.Usar svnserve es mucho más simple que Apache httpd, pero existen algunos problemas:

  • No puedes ejecutar múltiples instancias de svnserve ya que quiere usar el puerto 3690 y no le gusta compartir.Con Apache httpd, puedes tener múltiples repositorios.
  • La configuración de seguridad con svnserve es limitada.Con Apache, puedo usar el directorio activo de Windows o LDAP o puedo configurarlo manualmente.
  • A algunos navegadores de repositorios de Subversion basados ​​en web no les gusta svnserve.

Por cierto, si no lo has hecho, consulta el Subversion manual en línea.Es uno de los mejores manuales que he visto para cualquier proyecto de código abierto.


1 Cuando configuras tu repositorio usando svnserve, necesitas editar el svnserve.conf archivo habilitando la línea password-db = passed que se trata de la línea n.° 20 del archivo.Luego hay que editar el passed archivo (ubicado en el mismo directorio) para configurar los usuarios y sus contraseñas.Ambos son muy sencillos, pero fáciles de olvidar, y si no lo hace, no podrá guardar nada en su repositorio.

Otros consejos

Cuando necesite ramas y etiquetas del tronco de lo que debe necesitar la descarga import_dirs.copy

que después que cd /location/import_dirs.copy que ejecutar que comando

cd /data/svn/import_dirs.copy/ 
svn import  file:///location of repos/reposname/  -m "inital message"

Este es el ejemplo de ello .....

cd /home/raj/import_dirs.copy/
svn import  file:///srv/svn/nmg/  -m "inital message"

que se han realizado ramas y etiquetas del tronco

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top