Capítulo 5. Usos avanzados

Actualizar a una determinada fecha, rama o etiqueta

Las ramas de un módulo son versiones paralelas del mismo. Un ejemplo real de su uso es la publicación de un proyecto de software. Después de una publicación importante, habrá que corregir los fallos que vayan surgiendo en el código, pero también será necesario añadir nuevas características al código ya existente. Dado que es muy complicado realizar ambas cosas al mismo tiempo (las nuevas características incorporarán también nuevos fallos), CVS permite crear una versión paralela del proyecto que llamaremos «rama de la versión estable» y donde solo se podrán añadir correcciones a los fallos existentes mientras que en la rama principal (HEAD) se siguen añadiendo nuevas características.

Las etiquetas se usan para marcar una determinada versión de un proyecto. CVS asigna una determinada etiqueta a una versión de cada archivo por tanto cuando descarga o se actualiza a una determinada etiqueta siempre tendrá la misma versión del archivo; las etiquetas, a diferencias de las ramas, no se asignan dinámicamente sino que son inamovibles. Son de utilidad a la hora de marcar publicaciones del proyecto, grandes cambios en el código, etc.

Tanto si está participando en el desarrollo de un proyecto como si solo hace un seguimiento del mismo, no siempre trabajará con la rama principal. Después de la publicación de una nueva versión, quizás prefiera seguir con esa rama para realizar traducciones, arreglar fallos o simplemente porque se le supone mayor estabilidad. Para ello deberá actualizarse a la rama correspondiente a la publicación aunque todos los cambios que entregue también se enviarán a la nueva rama.

Si desea realizar el seguimiento de los fallos de alguna versión anterior, solo tendrá que «desactualizarse» a la versión que desee. Lo mismo sucede si desea volver a la versión existente en una fecha anterior, esto es especialmente útil si se ha introducido algún error entre dos versiones distintas. Cuando pase a una determinada fecha o etiqueta, las versiones de todos sus archivos serán los mismos que los de la versión existente en esa fecha o correspondiente a la etiqueta en cuestión.

Aviso

Antes de actualizarse a una rama o etiqueta diferente, asegúrese de haber enviado todas sus modificaciones a la rama en la que está trabajando. Si se actualiza teniendo cambios pendientes, es posible que los pierda. Si lo prefiere puede realizar una nueva Descarga para trabajar con ambas versiones a la vez.

Figura 5.1. Captura de pantalla del diálogo de actualización de Cervisia

Captura de pantalla del diálogo de actualización de Cervisia

Actualizar a una rama determinada

Seleccione esta opción para actualizarse a una rama determinada. Introduzca el nombre de la rama en el menú desplegable o pulse el botón Buscar lista para obtener una lista de las ramas del CVS y seleccione la que desee.

Actualizar a una etiqueta determinada

Seleccione esta opción si desea actualizarse a una determinada etiqueta. Introduzca el nombre de la etiqueta en el menú desplegable o pulse Buscar lista para descargar la lista de etiquetas disponibles en el servidor CVS y seleccione la que desee.

Actualizar a fecha

Seleccione esta opción para actualizarse a la versión existente en una determinada fecha. Aquí podrá emplear una gran variedad de formatos para la fecha. Un posible formato es aaaa-mm-dd donde aaaa es el año, mm el mes (numérico) y dd corresponde al día. Puede utilizar frases en inglés como yesterday o 2 weeks ago.

Nota

Actualizar a una determinada etiqueta o hacerla inamovible. es decir no podrá entregar más modificaciones de este archivo (salvo que la etiqueta sea la de una rama). Para volver a la rama principal seleccione AvanzadoActualizar a HEAD.

La orden ejecutada al actualizar a una rama o etiqueta es:

cvs update -r etiqueta

La orden para actualizarse a una fecha determinada es:

cvs update -D fecha

La orden ejecutada para actualizarse a la rama principal (HEAD) es:

cvs update -A