Periódicamente, debería asegurarse de que los cambios que hacen los demás se incorporen en su copia de trabajo local. El proceso de incorporar los cambios desde el servidor a su copia de trabajo local se conoce como actualización. La actualización puede hacerse en ficheros sueltos, en un conjunto de ficheros, o recursivamente en jerarquías completas de directorios. Para actualizar, seleccione los ficheros y/o directorios que desee, haga click con el botón derecho y seleccione → en el menú contextual del explorador. Aparecerá una ventana con el progreso de la actualización según se ejecuta. Los cambios que los demás hayan hecho se fusionarán con sus ficheros, manteniendo cualquier cambio que haya hecho en los mismos ficheros. El repositorio no se ve afectado por una actualización.
El diálogo de progreso utiliza un código de colores para resaltar diferentes acciones de actualización:
Nuevo ítem añadido a su copia de trabajo
Ítem redundante borrado de su copia de trabajo, o ítem faltante reemplazado en su copia de trabajo.
Cambios del repositorio que se han fusionado satisfactoriamente con sus cambios locales.
Cambios del repositorio fusionados con sus cambios locales, pero que han dado lugar a conflictos que debe resolver.
Items sin cambios en su copia de trabajo actualizados con una versión más nueva desde el repositorio.
Este es el esquema de colores por defecto, pero puede personalizar dichos colores utilizando el diálogo de configuración. Para más información, lea “Configuración de colores de TortoiseSVN”.
Si obtiene algún conflicto durante una actualización (esto puede suceder si los demás han cambiado las mismas líneas del mismo fichero a la vez que usted y esos cambios no concuerdan), el diálogo muestra esos conflictos en rojo. Puede hacer doble click en esas líneas para iniciar la herramienta de fusión externa para resolver los conflictos.
Cuando se completa la actualización, el diálogo de progreso le muestra un resumen con el número de ítems actualizados, añadidos, eliminados, en conflicto, etc. bajo la lista de ficheros. Esta información de resumen puede copiarse al portapapeles utilizando Ctrl+C.
El comando Actualizar estándar no tiene opciones y simplemente actualiza su copia de trabajo a la revisión HEAD del repositorio, lo que es el caso de uso más común. Si desea más control sobre el proceso de actualización, debería utilizar → . Esto le permite actualizar su copia de trabajo a una revisión específica, no sólo a la más reciente. Suponga que su copia de trabajo está en la revisión 100, pero quiere que refleje el estado que tenía en la revisión 50 - entonces simplemente actualice a la revisión 50. En el mismo diálogo puede elegir la profundidad para la actualización de la carpeta actual. Estos términos se describen en “Profundidad de obtención”. La profundidad por defecto es Copia de trabajo, lo que respeta la configuración de profundidad ya existente. También puede decidir si desea ignorar cualquier proyecto externo en la actualización (esto es, los proyectos referenciados utilizando svn:externals).
Si actualiza un fichero o una carpeta a una revisión en concreto, no debería hacer cambios en esos ficheros. ¡Obtendrá mensajes out of date (desactualizado) cuando intente confirmarlos! Si desea deshacer los cambios de un fichero y empezar de nuevo desde una revisión anterior, puede revertir a una revisión previa desde el diálogo de registro de revisiones. Lea “Deshacer revisiones en el repositorio” si desea más instrucciones, y métodos alternativos.
puede ser útil a veces para ver cómo estaba su proyecto en un momento anterior en su historia. Pero en general, actualizar ficheros individuales a una revisión anterior no es una buena idea, ya que deja su copia de trabajo en un estado inconsistente. Si el fichero que está actualizando ha cambiado de nombre, incluso puede encontrar que ese fichero ha desaparecido de su copia de trabajo porque en esa revisión no había ningún fichero con ese nombre. También debe tener en cuenta que el ítem mostrará una sobreimpresión normal verde, por lo que no se puede distinguir del resto de ficheros que están actualizados.
Si desea simplemente una copia local de una versión antigua de un fichero, es mejor utilizar el comando → desde el diálogo de registro para dicho fichero.
Si selecciona múltiples ficheros y carpetas en el explorador y luego selecciona , todos esos ficheros/carpetas se actualizan uno a uno. ¡TortoiseSVN se asegura de que todos los ficheros/carpetas del mismo repositorio se actualicen exactamente a la misma revisión! Incluso si entre esas actualizaciones ocurrió alguna confirmación.
A veces cuando intente actualizar, la actualización falla con un mensaje para decir que ya existe un fichero local con el mismo nombre. Esto típicamente ocurre cuando Subversion intenta obtener un fichero recién versionado, y se encuentra un fichero no versionado del mismo nombre en su copia de trabajo. Subversion nunca sobreescribirá un fichero no versionado - puede contener algo en lo que está trabajando, y que casualmente tiene el mismo nombre de fichero que otro desarrollador ha utilizado para su recién confirmado fichero.
Si obtiene este mensaje de error, la solución es simplemente renombrar el fichero local sin versionar. Tras completar la actualización, puede comprobar si el fichero renombrado sigue siendo necesario.
Si sigue obteniendo mensajes de error, utilize mejor el comando → para mostrar todos los ficheros con problemas. De esa forma puede lidiar con ellos de un golpe.