Comandos de TortoiseSVN

Obtener

svn checkout [-depth ARG] [--ignore-externals] [-r rev] URL RUTA
      

El cuadro desplegable de profundidad esta relacionado con el argumento -depth

Si se marca Omitir externos, utilice la opción --ignore-externals.

Si está obteniendo una revisión en concreto, especifíquela detrás de la URL utilizando la opción -r.

Actualizar

svn info URL_of_WC
svn update [-r rev] RUTA
      

A día de hoy, la actualización no es una operación atómica en Subversion. Por tanto, TortoiseSVN primero encuentra la revisión HEAD del repositorio, y luego actualiza todos los ítems a ese número de revisión en concreto, evitando crear así una copia de trabajo mezclada.

Si sólo se selecciona un único ítem para actualizar, o si los ítems seleccionados no son todos del mismo repositorio, TortoiseSVN simplemente actualiza hasta HEAD.

Aquí no se utilizan opciones en la línea de comandos. Actualizar a la Revisión también implementa el comando actualizar, pero ofrece más opciones.

Actualizar a la revisión

svn info URL_of_WC
svn update [-r rev] [-depth ARG] [--ignore-externals] RUTA
      

El cuadro desplegable de profundidad esta relacionado con el argumento -depth

Si se marca Omitir externos, utilice la opción --ignore-externals.

Confirmar

En TortoiseSVN, el diálogo de confirmación utiliza varios comandos Subversion. La primera fase es una comprobación del estado que determina los ítems de su copia de trabajo que potencialmente pueden ser confirmados. Puede revisar la lista, comparar los archivos contra BASE y seleccionar los ítems que desea incluir en la confirmación.

svn status -v RUTA
      

Si se marca Mostrar archivos no versionados, TortoiseSVN le mostrará también todos los archivos y carpetas no versionados en su jerarquía de la copia de trabajo, teniendo en cuenta las reglas de ignorar. Esta característica en concreto no tiene equivalente directo en Subversion, ya que el comando svn status no entra en carpetas no versionadas.

Si selecciona cualquier archivo o carpeta no versionado, esos ítems primero se añadirán a su copia de trabajo.

svn add RUTA...
      

Cuando pulsa Aceptar, tiene lugar la confirmación en Subversion. Si ha dejado todas las casillas de selección de archivos sin tocar tal y como aparecieron, TortoiseSVN utilizará una única confirmación recursiva en la copia de trabajo. Si ha deseleccionado algún archivo, entonces se debe utilizar una confirmación no-recursiva (-N), y se debe especificar individualmente cada ruta en la línea de comandos de la confirmación.

svn commit -m "LogMessage" [-depth ARG] [--no-unlock] RUTA...
      

Mensaje de registro aquí representa los contenidos del cuadro de texto Mensaje de Registro. Puede estar vacío.

Si se marca Mantener Bloqueos, utilice la opción --no-unlock.

Diff

svn diff RUTA
      

Si utiliza Diff desde el menú contextual principal, está comparando un archivo modificado contra su revisión BASE. La salida del comando CLI anterior también hace ésto y produce la salida en formato diff unificado. Sin embargo, esto no es lo que TortoiseSVN utiliza. TortoiseSVN utiliza TortoiseMerge (o un programa de comparación de su elección) para mostrar las diferencias visualmente entre archivos de texto completos, por lo que no hay equivalente directo en el CLI.

También puede comparar 2 archivos cualquiera utilizando TortoiseSVN, estén o no bajo el control de versiones. TortoiseSVN simplemente alimenta con los dos archivos al programa de diferencias y le deja que él encuentre dónde están las diferencias.

Mostrar registro

svn log -v -r 0:N --limit 100 [--stop-on-copy] RUTA
o
svn log -v -r M:N [--stop-on-copy] RUTA
      

Por defecto, TortoiseSVN intenta recoger 100 mensajes de registro utilizando el método --limit. Si la configuración establece que utilice las APIs antiguas, se usa la segunda forma para obtener los mensajes de registro de 100 revisiones del repositorio.

Si se marca Parar en copia/renombrado, utilice la opción --stop-on-copy.

Comprobar modificaciones

svn status -v RUTA
o
svn status -u -v RUTA
      

La comprobación de estado inicialmente sólo muestra su copia de trabajo. Si pulsa en Comprobar repositorio, se comprueba también el repositorio para ver qué archivos cambiarían tras una actualización, lo que necesita la opción -u.

Si se marca Mostrar archivos no versionados, TortoiseSVN le mostrará también todos los archivos y carpetas no versionados en su jerarquía de la copia de trabajo, teniendo en cuenta las reglas de ignorar. Esta característica en concreto no tiene equivalente directo en Subversion, ya que el comando svn status no entra en carpetas no versionadas.

Gráfico de revisión

El gráfico de revisiones es una característica única de TortoiseSVN. No hay equivalente en el cliente de línea de comandos.

Lo que hace TortoiseSVN es un

svn info URL_de_la_copia_de_trabajo
svn log -v URL
        

donde URL es el repositorio raíz y analiza la información devuelta.

Navegador de repositorios

svn info URL_de_la_copia_de_trabajo
svn list [-r rev] -v URL
      

Puede utilizar svn info para determinar la raíz del repositorio, que es el nivel superior mostrado en el navegador de repositorios. No puede navegar más arriba de ese nivel. Además, este comando devuelve toda la información sobre bloqueos que se muestra en el navegador de repositorios.

La llamada svn list le mostrará los contenidos de un directorio, cuando se proporciona una URL y una revisión.

Editar conflictos

Este comando no tiene equivalente CLI. Invoca TortoiseMerge o una herramienta externa de fusión/comparación en 3 paneles para mirar los archivos en conflictos y ver qué líneas hay que utilizar.

Resuelto

svn resolved RUTA
      

Renombrar

svn rename RUTA_ACTUAL NUEVA_RUTA
      

Eliminar

svn delete RUTA
      

Revertir

svn status -v RUTA
      

La primera fase es una comprobación del estado que determina los ítems en su copia de trabajo que pueden ser revertidos potencialmente. Puede revisar la lista, comparar los archivos contra BASE y seleccionar los ítems que desea incluir en la operación de revertir.

Cuando pulsa Aceptar, tiene lugar la operación de revertir en Subversion. Si ha dejado todas las casillas de selección de archivos sin tocar tal y como aparecieron, TortoiseSVN utilizará una única operación revertir recursivamente (-R) en la copia de trabajo. Si ha deseleccionado algún archivo, entonces se debe especificar individualmente cada ruta en la línea de comandos de la operación de revertir.

svn revert [-R] RUTA...
      

Limpieza

svn cleanup RUTA
      

Obtener bloqueo

svn status -v RUTA
      

La primera fase es una comprobación del estado que determina los archivos en su copia de trabajo que pueden ser potencialmente bloqueados. Puede seleccionar los ítems que desea bloquear.

svn lock -m "Mensaje de bloqueo" [--force] RUTA...
      

Mensaje de bloqueo aquí representa los contenidos del cuadro de texto Mensaje de bloqueo. Puede estar vacío.

Si se marca Robar los bloqueos, utilice la opción --force.

Quitar bloqueo

svn unlock RUTA
      

Rama/Etiqueta

svn copy -m "Mensaje de registro" URL URL
o
svn copy -m "Mensaje de registro" [email protected] [email protected]
o
svn copy -m "Mensaje de registro" RUTA URL
      

El diálogo Rama/Etiqueta hace una copia en el repositorio. Hay 3 botones de opciones:

  • Revisión HEAD en el repositorio
  • Revisión específica en el repositorio
  • Copia de trabajo

que corresponden a las 3 variantes de línea de comandos anteriores.

Mensaje de registro aquí representa los contenidos del cuadro de texto Mensaje de Registro. Puede estar vacío.

Cambiar

svn info URL_de_la_copia_de_trabajo
svn switch [-r rev] URL RUTA
      

Fusionar

svn merge [--dry-run] --force [email protected] [email protected] RUTA
      

Probar fusión realiza la misma fusión con la opción --dry-run.

svn diff [email protected] [email protected]
      

Diff unificado muestra la operación de diferenciación que se utilizará para hacer la fusión.

Exportar

svn export [-r rev] [--ignore-externals] URL RUTA_Exportación
      

Esta forma se utiliza cuando se accede desde una carpeta sin versionar, y la carpeta se utiliza como el destino.

La exportación de una copia de trabajo a otro lugar se hace sin utilizar las bibliotecas de Subversion, por lo que no hay línea de comandos equivalente.

Lo que TortoiseSVN hace es copiar todos los archivos al nuevo destino mientras le muestra el progreso de la operación. Opcionalmente, pueden exportarse también los archivos y/o carpetas sin versionar.

En ambos casos, si se marca Omitir externos, utilice la opción --ignore-externals.

Relocalizar

svn switch --relocate URL_Origen URL_Destino
      

Crear repositorio aquí

svnadmin create --fs-type fsfs RUTA
      

Añadir

svn add RUTA...
      

Si había seleccionado una carpeta, en primer lugar TortoiseSVN la escanea recursivamente en busca de ítems que puedan ser añadidos.

Importar

svn import -m "Mensaje de registro" RUTA URL
      

Mensaje de registro aquí representa los contenidos del cuadro de texto Mensaje de Registro. Puede estar vacío.

Autoría

svn blame -r N:M -v RUTA
svn log -r N:M RUTA
      

Si utiliza TortoiseBlame para ver la información de autoría, se necesita también el archivo de registro para mostrar los mensajes de registro en un texto de ayuda. Si visualiza la autoría como un archivo de texto, no se necesita esta información.

Añadir a la lista de ignorados

svn propget svn:ignore RUTA > ficherotemporal 
{editar los nuevos ítems a ignorar en el archivo ficherotemporal}
svn propset svn:ignore -F ficherotemporal RUTA
      

Dado que svn:ignore a menudo tiene un valor con varias líneas, aquí se muestra cómo se cambiaría utilizando un archivo de texto mejor que hacerlo directamente en la línea de comandos.

Crear parche

svn diff RUTA > fichero-parche
      

TortoiseSVN crea un archivo de parche en formato diff unificado comparando la copia de trabajo con su versión BASE.

Aplicar parche

Aplicar parches es un trabajo complicado a no ser que el parche y la copia de trabajo estén en la misma revisión. Afortunadamente, puede utilizar TortoiseMerge, que no tiene equivalente directo en Subversion.