Capítol 5. Ús avançat

Actualitzant a una etiqueta, branca o data

Les branques d'un mòdul són versions paral·leles d'aquest mòdul. Un bon exemple real de la utilització d'aquesta característica és el llançament d'un projecte de programari. Després d'un llançament important, hi ha errors en el codi que han de ser arranjats, però la gent també vol afegir característiques noves. És molt difícil fer les dues coses alhora, perquè les característiques noves generalment introdueixen errors nous, cosa que dificulta localitzar els antics. Per a resoldre aquest dilema, CVS us permet crear una versió paral·lela, que anomenarem la «branca de la versió estable», on només es poden afegir correccions d'errors, deixant la branca de llançament principal (HEAD) oberta per a afegir característiques noves.

Les etiquetes s'usen per a marcar una versió d'un projecte. CVS marca una versió de cada fitxer amb l'etiqueta, de manera que quan vulgueu extreure o actualitzar a una etiqueta específica, sempre obtingueu la mateixa versió dels fitxers: per tant, en oposició a les branques, les etiquetes no són dinàmiques: no podeu desenvolupar una etiqueta. Les etiquetes són útils per a marcar llançaments, grans canvis en el codi, etc.

Quan esteu desenvolupant o seguint el desenvolupament d'un projecte de programari, no heu de treballar necessàriament amb la branca principal tot el temps. Després d'un llançament, potser voldreu mantenir-vos amb la branca llançada durant un temps, per a gaudir de la seva relativa estabilitat, arranjar errors, traduir les fonts, etc. Per a fer tot això, heu d'actualitzar la branca llançada. Tots els vostres fitxers s'actualitzaran a les darreres versions dels fitxers en aquesta branca. Després d'actualitzar, totes les vostres comissions noves també es pujaran a la branca nova.

Si voleu seguir un error que fou reportat contra el passat llançament etiquetat, CVS també ofereix la possibilitat de recuperar el programari tal com fou llançat, actualitzant a aquesta etiqueta. Per altra banda, si voleu obtenir una versió passada del vostre projecte, podeu actualitzar la vostra còpia de treball a una data específica. Això pot ser útil si s'ha introduït un error en el projecte entre dos llançaments, i teniu una idea de quan va ser. En actualitzar a una data o etiqueta, les versions dels vostres fitxers seran les mateixes a les versions en la data específica o les versions marcades amb aquesta etiqueta.

Avís

Abans d'actualitzar a una branca o etiqueta diferent, assegureu-vos que heu comès tots els vostres canvis a la branca amb què esteu treballant. Si no esteu preparat per a cometre els vostres canvis, però no els voleu descartar, no actualitzeu a la branca nova, ja que perdríeu els vostres canvis. Com a alternativa, podeu fer una extracció nova, per a treballar en paral·lel amb ambdues versions.

Figura 5.1. Una captura de pantalla del diàleg actualitza a l'etiqueta del Cervisia

Una captura de pantalla del diàleg actualitza a l'etiqueta del Cervisia

Actualitza a la branca

Seleccioneu aquesta opció per a actualitzar a una branca. Introduïu el nom de la branca en el quadre de text desplegable (o premeu el botó Obtén llista per a recuperar la llista de branques del servidor CVS, i seleccioneu la que vulgueu en la llista desplegable).

Actualitza a l'etiqueta

Seleccioneu aquesta opció per a actualitzar a una etiqueta. Introduïu el nom de la branca en el quadre de text desplegable (o premeu el botó Obtén llista per a recuperar la llista d'etiquetes del servidor CVS, i seleccioneu la que vulgueu en la llista desplegable).

Actualitza a la data

Seleccioneu aquesta opció si voleu actualitzar a una data. En el camp inferior, podeu introduir una ampla varietat de formats de data. Un format possible és aaaa-mm-dd on aaaa és l'any, mm és el mes (numero) i dd és el dia. Les alternatives són algunes frases en anglès com ara yesterday o 2 weeks ago.

Nota

Actualitzar a una etiqueta o data fa que sigui etiquetat, és a dir no podreu cometre futures modificacions d'aquests fitxers (tret que l'etiqueta sigui una etiqueta de branca). Per tal de tornar enrere a la branca principal, useu l'element del menú AvançatActualitza a HEAD.

L'ordre emesa per a actualitzar a una branca o etiqueta és:

cvs update -r etiqueta

L'ordre emesa per a actualitzar a una data és:

cvs update -D data

L'ordre emesa per a actualitzar a la branca principal (HEAD) és:

cvs update -A