Personal tools
You are here: Home Membres jordinas's Home Processament de dades Programació Processament de text Representació de dades amb text Gestió de versions amb RCS
« July 2008 »
Mo Tu We Th Fr Sa Su
123456
78910111213
14151617181920
21222324252627
28293031
 
Document Actions

Gestió de versions amb RCS

RCS (Revision Control System) és el sistema de gestió de versions del projecte GNU, i base del més modern sistema CVS.

Control de versions

Si sou de caràcter curiós i heu estat xafardejant amb codi trobat per Internet segur que heu observat, en molts fitxers de C i altres llenguatges, línies similars a la següent:

/* $Id: cc.c,v 1.13 1999/07/02 11:00:45 Joan Exp Joan $ */

Això significa que el fitxer ha estat editat sota el control del sistema de control de revisions RCS (Revision Control System). RCS és la solució a un problema i entendreu la seva utilitat si enteneu el problema.

Programar i administrar sistemes implica l'edició, a vegades de forma continuada, de multitud de fitxers de text i això és aplicable tant a un programa escrit en C com als fitxers de configuració del servidor web Apache. En editar un fitxer podem fer modificacions que, en contra de la nostra voluntat, facin malbé els continguts del fitxer. Aleshores en agradaria tornar a la versió del fitxer anterior a la nostra malifeta, però ja és massa tard, perque en desar el fitxer nou hem eliminat el vell. Fer una còpia de cada fitxer abans d'editar-lo no és una solució real, perque el que necessitem és disposar de la versió anterior, i la anterior a l'anterior, i així fins a la versió original.

RCS és la solució al problema plantejat en el paràgraf anterior. Encara que RCS disposa de multitud d'opcions i possibilitats, el seu ús bàsic és molt simple. La idea fonamental consisteix en considerar que RCS manté una base de dades amb totes les versions històriques dels fitxers. Això ho fa de forma eficient, ja que tan sols conserva les diferències entre cada versió del fitxer, no còpies senceres. La base de dades la manté en un directori de nom RCS, que heu de crear vosaltres en cada un dels directoris on vulgueu fer servir el sistema. Una vegada creat el directori, les operacions més importants que podeu realitzar impliquen l'ús de les ordes ci (check-in) i co (check-out), i estan resumides en la taula següent.

Instrucció

Efecte

ci -l fitxer

Fa una còpia del fitxer a la base de dades i permet continuar la seva edició.

ci -u fitxer

Fa una còpia del fitxer i impedeix la seva edició modificant els seus atributs.

ci fitxer

Fa una còpia del fitxer i l'elimina del directori actual. Ara el fitxer està tan sols a la base de dades del directori RCS. D'aquesta forma no el podem fer servir, però tampoc modificar per error.

co -l fitxer

Recupera el permís d'edició del fitxer, substituint el fitxer del directori actual, si aquest existeix, per una còpia del fitxer contingut a la base de dades del directori RCS.

co fitxer

Fa una còpia del fitxer situat a la base de dades del directori RCS dins del directori a actual. El fitxer no és pot editar.

rcsdiff fitxer

Compara el fitxer del directori actual amb la darrera versió desada en la base de dades i mostra les diferències.

rlog fitxer

Mostra tota la informació de la base de dades sobre el fitxer.

La documentació de RCS està disponible en pàgines del manual i també en el sistema Info. Per obtenir tota la informació podeu consultar aquestes pàgines:

  • rcsintro(1)
  • ci
  • co
  • ident
  • rcs
  • rcsdiff
  • rlog
  • rcsfile