Avec RCS, vous pouvez marquer vos
fichiers sources et objets par des chaines d'identification
spéciales. RCS utilise pour ça la substitution de mots-clés. Par
exemple, pour obtenir l'identification, placez le mot-clé suivant dans
le texte d'une révision (par exemple dans un commentaire en C):
$Id: rcs-4.html 12671 2007-05-01 22:23:59Z seb $
.
La commande co
remplacera ce mot-clé avec une chaine de la
forme : $Id filename revisionnumber date time author state
locker$
. Cette chaine décrit le nom du fichier, la
révision, la date et l'heure du check-out, l'auteur, l'état
(par exemple, Exp pour expérimental) et celui qui verrouille
le fichier. Cette chaine sera mise à jour automatiquement à chaque
fois.
Pour obtenir la même chose dans les fichiers objets, utilisez une chaine littérale de caractères, par exemple en C :
static char rcsid[]="$Id: rcs-4.html 12671 2007-05-01 22:23:59Z seb $";
Cette possibilité est très importante pour la maintenance des
programmes. Ainsi, la commande ident
extrait ces mots-clés à
partir de n'importe quel fichier (donc les fichiers objets). Cela
permet de retrouver quelles révisions de quels modules ont été
utilisées pour construire le programme.
Il existe d'autres mots-clés d'identification
( Prenons un exemple concret, voilà le début du fichier Lorsque nous extrayons la révision 1.2, nous obtenons en début du
fichier foo.c :
Si nous compilons nous obtenons :
Ce qui nous permet de savoir que le fichier
$Author: seb $, $Date: 2007-05-02 00:23:59 +0200 (mer, 02 mai 2007) $,
$Header$, $Locker$ ,$Name$
,$RCSfile$, $Revision: 12671 $,
$Source$, $State$
, voir la page de
manuel de co
). Un mot-clé important est
$Log$
Revision 1.1 1999/08/18 21:06:08 cvs
Initial revision
Revision 1.1.1.1 1999/07/27 10:53:43 http
Web APRIL importe
Revision 1.1.1.1 1999/07/26 21:06:01 cvs
Arborescence du serveur Web d'APRIL.
Revision 1.1.1.1 1999/07/24 16:16:59 cvs
Creation du master pour le Web
. Son fonctionnement est un peu différent,
il permet d'accumuler les messages du journal saisis lors du processus
de check-in. On utilise ce mot-clé dans un commentaire en
début de fichier source. Ainsi le fichier source est auto-documenté.
foo.c
lors de sa création :
/*
* $Id: rcs-4.html 12671 2007-05-01 22:23:59Z seb $
*
* $Log$
* Revision 1.1 1999/08/18 21:06:08 cvs
* Initial revision
*
* Revision 1.1.1.1 1999/07/27 10:53:43 http
* Web APRIL importe
*
* Revision 1.1.1.1 1999/07/26 21:06:01 cvs
* Arborescence du serveur Web d'APRIL.
*
* Revision 1.1.1.1 1999/07/24 16:16:59 cvs
* Creation du master pour le Web
*
*
*/
static char rcsid[] = "$Id: rcs-4.html 12671 2007-05-01 22:23:59Z seb $";
/*
* $Id: rcs-4.html 12671 2007-05-01 22:23:59Z seb $
*
* $Log$
* Revision 1.1 1999/08/18 21:06:08 cvs
* Initial revision
*
* Revision 1.1.1.1 1999/07/27 10:53:43 http
* Web APRIL importe
*
* Revision 1.1.1.1 1999/07/26 21:06:01 cvs
* Arborescence du serveur Web d'APRIL.
*
* Revision 1.1.1.1 1999/07/24 16:16:59 cvs
* Creation du master pour le Web
*
* Revision 1.2 1997/08/23 20:33:36 mad
* Affichage 10 fois du message
*
* Revision 1.1 1997/08/23 20:33:05 mad
* Initial revision
*
*
*/
static char rcsid[] = "$Id: rcs-4.html 12671 2007-05-01 22:23:59Z seb $";
foo.c
pour obtenir a.out
, et que
nous utilisons la commande :
ident a.out
a.out: $Id: rcs-4.html 12671 2007-05-01 22:23:59Z seb $
a.out
a été
obtenu à partir de la révision 1.2 de foo.c
.
Previous
Next
Contents