Exportando una copia de trabajo de Subversion

A veces querrá una copia de su árbol de trabajo sin ninguno de esos directorios .svn, por ejemplo para crear un fichero comprimido de sus fuentes, o para exportarlo a un servidor web. En vez de hacer una copia y borrar todos esos directorios .svn manualmente, TortoiseSVN ofrece el comando TortoiseSVNExportar.... Las operaciones exportar desde una URL y exportar desde una copia de trabajo se tratan de forma ligeramente distinta.

Figura 4.48. El diálogo Exportar-desde-URL

El diálogo Exportar-desde-URL


Si ejecuta este comando sobre una carpeta sin versionar, TortoiseSVN asumirá que la carpeta de destino es el objetivo, y abrirá un diálogo para que introduzca la URL y la revisión desde la que desea realizar la exportación. Este diálogo tiene opciones para exportar sólo la carpeta de más alto nivel, para omitir las referencias externas, y para obligar un estilo de fin de línea concreto en aquellos ficheros que tuvieran establecida la propiedad svn:eol-style.

Por supuesto también puede exportar directamente desde el repositorio. Utilice el Navegador de repositorios para navegar al subárbol relevante en su repositorio, y luego utilice Menú contextualExportar. Obtendrá el diálogo Exportar desde URL descrito más arriba.

Si ejecuta este comando en su copia de trabajo, se le preguntará por el lugar donde guardar la copia de trabajo limpia sin las carpetas .svn. Por defecto, sólo se exportan los ficheros versionados, pero puede utilizar la casilla Exportar también los ficheros o versionados para incluir cualquier otro fichero no versionado que exista en su copia de trabajo y no esté en el repositorio. Las referencias externas utilizando svn:externals pueden omitirse si es necesario.

Otra forma de exportar su copia de trabajo es arrastrar con el botón derecho la carpeta con la copia de trabajo a otro lugar y elegir Menú contextualSVN Exportar aquí o Menú contextualSVN Exportar todo aquí. La segunda opción incluirá también los ficheros sin versionar.

Cuando exporte desde una copia de trabajo, si en la carpeta de destino ya existe otra con el nombre de la que está exportando, se le dará la opción de sobreescribir el contenido existente, o de crear una nueva carpeta con un nombre generado automáticamente, por ejemplo, Destino (1).

Exportando ficheros sueltos

El diálogo de exportar no permite exporar ficheros sueltos, aunque Subversion puede hacerlo.

Para exportar ficheros sueltos con TortoiseSVN, tendrá que utilizar el navegador de respositorios (“El navegador de repositorios”). Simplemente arrastre el o los ficheros que desea exportar desde el navegador de repositorios a donde los desee tener en el explorador, o utilice el menú contextual del navegador de repositorios para exportar los ficheros.

Exportando un árbol de cambios

Si quiere exportar una copia de su estructura de árbol del proyecto pero conteniendo sólo los ficheros que han cambiado en una revisión en concreto, o entre dos revisiones, utilice la característica de comparar revisiones descrita en “Comparando carpetas”.

Eliminando una copia de trabajo del control de versiones

A veces tiene una copia de trabajo que desea reconvertir en una carpeta normal sin los directorios .svn. Lo que realmente necesita es un comando exportar-en-el-sitio, que simplemente elimine las carpetas de control, en vez de generar un nuevo árbol limpio.

La respuesta es sorprendentemente sencilla - ¡exporte el árbol en si mismo! TortoiseSVN detecta este caso especial y le pregunta si quiere convertir su copia de trabajo en no-versionada. Si responde , los directorios de control se eliminan y tendrá un simple árbol sin directorios de control.