RCS, le système de contrôle de révisions, est un ensemble de programmes qui suivent les changements dans des fichiers textes et contrôlent les accès concurrents dans le cadre d'un travail collectif. Il est généralement utilisé pour maintenir des collections de codes sources. Il est également adapté au suivi des fichiers de documentation.
RCS a été écrit par Walter F. Tichy et Paul Eggert. La dernière version ayant été portée sous Linux est la 5.7. Il existe également une version semi officielle multitâche (threaded). La plupart des informations de ce Howto proviennent des pages de manuel de RCS.
RCS comprend le programme rcs(1)
qui contrôle les attributs de
l'archive RCS, ci(1)
et co(1)
, qui enregistrent un fichier dans
l'archive (check in) et extraient des fichiers de l'archive (check
out), ident(1)
, qui recherche un mot-clé dans une archive RCS,
rcsclean(1)
, qui fait le ménage en éliminant les fichiers inchangés et
sur lesquels personne ne travaille, rcsdiff(1)
, qui exécute
diff(1)
pour comparer les révisions, rcsmerge(1)
, qui fusionne
deux branches de développement en un seul fichier, et rlog(1)
, qui
affiche l'historique des modifications.
Les fichiers archivés avec RCS peuvent être du texte d'un format
quelconque, ou des fichiers binaires si le diff
utilisé pour générer
les changements supporte les données sur 8 bits. Les fichiers peuvent
contenir un texte de description pour faciliter le suivi par ident
.
RCS utilise les programmes diff(1)
and diff3(1)
pour générer les
modifications entre les diverses révisions. Une archive RCS consiste en la
révision initiale - la version 1.1 - et une série de modifications, une
pour chaque révision. Chaque fois qu'un fichier est extrait de l'archive à
l'aide de co(1)
, édité, puis à nouveau enregistré dans l'archive avec
ci(1)
, le numéro de version est incrémenté, par exemple 1.2, 1.3, 1.4,
etc. pour les révisions successives.
Les fichiers archives eux-mêmes se trouvent généralement dans un
sous-répertoire ./RCS
, bien que RCS ait d'autres options pour le
stockage des archives.
Pour une vue d'ensemble de RCS, voyez également la page de manuel de rcsintro(1)
.