Hasta ahora siempre había utilizado herramientas con interfaz gráfica para interactuar con un repositorio subversion, RapidSVN en Linux y TortoiseSVN en Windows.
Esta tarde he tenido que hacer una excepción, haciendo unas prácticas de una asignatura he interactuado con el repositorio SVN directamente con el comando svn; pienso que usarlo mediante comando es bastante útil, sobre todo en entornos en los que usar una GUI es imposible o para solucionar algún problema, preferimos hacerlo directamente sin una vista sobre una aplicación más pesada. Sea cual sea vuestro caso, a continuación os dejo un breve resumen de los comandos básicos de svn:
A través de este comando enviaremos de forma recursiva el contenido de una ruta a un servidor SVN. Si omitimos la ruta local se establecerá el directorio actual. Un ejemplo de uso podría ser:
ahornero@6581-D:~/practica$ svn import –username ahornero –password 12987Guh2436 https://ahornero.com/svn/practica
Este comando se utiliza para hacernos directamente con un árbol de un directorio del repositorio SVN. Un ejemplo de uso podría ser el siguiente:
ahornero@6581-D:~/practica$ svn co –username ahornero –password 12987Guh2436 https://ahornero.com/svn/practica
Cuando se crea un nuevo archivo o directorio, hemos de indicarselo explicitamente al servidor SVN. Es importante saber que el hecho de indicar no significa subirlo, hasta no hacer un commit no se interactuará con el servidor en este sentido.
Análogo a add para eliminar, y uso similar.
Con este comando imprimiremos el estado de los directorios y archivos. Si hemos hecho cambios locales, se mostrarán los elementos modificados localmente. Si utilizamos el parámetro –verbose, obtendremos información de la revisión de cada elemento. Con el parámetro –show-updates, mostraremos los que están fuera de fecha (out-of-date)
Así, sincronizaremos nuestro directorio local con el servidor. Si hemos hecho cambios locales, trataremos de combinar los cambios en el servidor con los cambios en el equipo; es importante destacar que este comando no afecta al servidor, si no al equipo local únicamente.
Este comando envía recursivamente los cambios al servidor SVN. Se hará entonces un commit de los archivos modificados, añadidos y borrados. Hemos de tener en cuenta que para evitar que afecte a todo el directorio, podemos indicar explícitamente la ruta específica o los archivos afectados, simplemente los añadimos al final del comando.
A través de la opción -m podemos añadir un mensaje determinado, la forma de usar es la siguiente:
ahornero@6581-D:~/practica$ svn commit -m “Registro alpha actualizado”.
Este comando es similar al conocido comando diff de UNIX, de hecho, la forma de utilizarlo es similar. Podremos saber que cambios existen entre dos revisiones usándolo svn diff-r revision1:revision2 nombre_archivo. Por ejemplo:
ahornero@6581-D:~/practica$ svn diff -r 145:146 práctica.odt
, lo que retornará los cambios entre la revisión 145 y 146 para el fichero práctica.odt.
Y esto es todo, ¿alguna duda o sugerencia?
https://www.youtube.com/embed/z-xGk9c_eOw Guionista y locutor: Manuel Ignacio López Quintero.Fecha de publicación: 31 de diciembre de 2024.
Ver comentarios
Buen articulo, a ver si podrias indicarnos un gestor visual del svn pero para el servidor y que sea para Linux.
En Windows por ejemplo está el Visual Svn.
Es decir, un gestor de usuarios y permisos que cuente con interfaz gráfica para Linux, para facilitar la gestión