jueves, 5 de mayo de 2011

Los 10 Comandos SVN más utilizados


Subversion es una de los muchos sistemas de control de versiones disponibles actualmente, y una de las más utilizadas. La gente de TheGeekStuff publicó una lista de los 10 comandos svn más comunes, aquellos que todos los que trabajan de forma versionada (y todo el mundo que haga Ingeniería de Software debería hacerlo) deben conocer. A continuación la traducción -libre- del texto original.


1. SVN Checkout - Crear una copia de trabajo

El comando Checkout se utiliza para descargar fuentes de un repositorio SVN a una copia de trabajo. Si se quiere acceder a los archivos del servidor SVN, lo primero que se debe hacer es un checkout.

SVN checkout crea la copia de trabajo, desde donde se puede editar, eliminar o agregar contenido. Se puede hacer checkout a un archivo, directorio, trunk o un proyecto completo. Para realizar el checkout se debe conocer la URL de los componentes.

Syntaxis:
svn checkout URL PATH

En donde URL es la URL de los componentes. Si se omite PATH, se utilizará el nombre base (basename) de la URL como destino. Si se especifican múltiples URLs, se realizará el checkout de cada una, dentro de un subdirectorio de PATH, con nombre igual al nombre base de cada URL.

Cuando se realiza un checkout, se crea un un directorio oculto denominado .svn, en el cual se almacenan los detalles del repositorio.


2. SVN Commit - Guardar cambios en el repositorio

Si se hacen cambios en la copia de trabajo, éstos no se reflejarán en el servidor SVN. Para hacer que estos cambios sean permanentes, se necesita hacer un commit.

Sintaxis:
svn commit -m "log message"


3. SVN List - Lista las entradas de directorio

SVN list es útil si se quiere ver el contenido del repositorio SVN, sin necesidad de descargar toda la copia de trabajo.

Sintaxis:
svn list


4. SVN Add - Agregar un archivo nuevo al repositorio

Cuando se agrega un nuevo archivo o directorio al repositorio, se utiliza el comando svn add. El nuevo archivo se agregará al repositorio, una vez que se haga un SVN commit.

Sintaxis
svn add URL

Ejemplo:

añadir el archivo entrada.txt:
svn add entrada.txt

commitear el archivo
svn commit -m "Agregando entrada.txt" entrada.txt

5. SVN Delete - Eliminar un archivo del repositorio

SVN delete elimina un item de la copia de trabajo (o repositorio). El archivo se eliminará del repositorio cuando se haga un commit.

Sintaxis:
svn delete URL

Ejemplo:
svn delete entrada.txt
svn commit -m "eliminando entrada.txt" entrada.txt


6. SVN Diff - Mostrar diferencias

SVN diff muestra las diferencias entre la copia de trabajo y la copia del repositorio.


Sintaxis:
svn diff archivo

svn -r R1:R2 diff archivo


7. SVN Status - Estado de la copia de trabajo

El comando svn status se utiliza para obtener el estado de un archivo de la copia de trabajo. Muestra si el archivo está modificado, si está siendo agregado/eliminado, o si el archivo no está en versión, etc.

Sintaxis:
svn status PATH


8. SVN Log - Muestra los mensajes de log

SVN recuerda cada cambio hecho a los archivos y directorios. Para conocer todos los commits hechos en un archivo o directorio, se utiliza el comando svn log.

Sintaxis:
svn log PATH


9. SVN Move - Renombrar archivo o directorio

Este comando mueve un archivo de un directorio a otro, o lo renombra, en el caso de que los directorios de origen y destino sean el mismo (análogo al comando mv de linux). Los cambios tomarán efecto en el repositorio, luego de un commit.

Sintaxis:
svn move SRC DEST


10. SVN Update - Actualiza la copia de trabajo

El comando svn update se utiliza para actualizar la copia de trabajo desde el repositorio.

Sintaxis:
svn update PATH