2009-09-20 12:34:28 +02:00
|
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
2002-12-16 09:24:58 +01:00
|
|
|
|
<!DOCTYPE html
|
|
|
|
|
PUBLIC "-//ENS/Tuteurs//DTD TML 1//EN"
|
|
|
|
|
"tuteurs://DTD/tml.dtd">
|
|
|
|
|
<html>
|
|
|
|
|
<head>
|
|
|
|
|
<title>RCS</title>
|
|
|
|
|
</head>
|
|
|
|
|
<body>
|
|
|
|
|
|
2009-09-20 12:27:14 +02:00
|
|
|
|
<h1>Le contrôle de versions : RCS (<em>Revision Control System</em>)</h1>
|
2002-12-16 09:24:58 +01:00
|
|
|
|
|
|
|
|
|
<p>
|
2009-09-20 12:27:14 +02:00
|
|
|
|
C'est un programme très simple mais puissant qui permet de garder
|
|
|
|
|
l'historique d'un fichier. Son intérêt est que vos fichiers évoluent au fur et
|
|
|
|
|
à mésure que vous les modifiez, et sans un outil de gestion de version, on
|
|
|
|
|
peut difficilement gérer les anciennes versions.
|
2002-12-16 09:24:58 +01:00
|
|
|
|
</p>
|
|
|
|
|
|
2011-07-08 04:09:34 +02:00
|
|
|
|
<p>
|
|
|
|
|
Attention, ce logiciel est assez ancien et peu utilisé de nos jours.
|
|
|
|
|
Pour une utilisation personnelle à la manière de ce tutoriel, on utilise plus souvent <a href="../git/">git</a>.
|
|
|
|
|
</p>
|
|
|
|
|
|
2002-12-16 09:24:58 +01:00
|
|
|
|
<h2><a name="base">Commandes de base</a></h2>
|
|
|
|
|
|
|
|
|
|
<p>
|
2009-09-20 12:27:14 +02:00
|
|
|
|
Sans trop rentrer dans les détails (pour cela, faire <code>man
|
|
|
|
|
rcsintro</code>), l'utilisation de base peut se résumer à deux
|
|
|
|
|
commandes : </p>
|
2002-12-16 09:24:58 +01:00
|
|
|
|
|
|
|
|
|
<h3><a name="ci">Enregistrer le fichier</a></h3>
|
|
|
|
|
|
|
|
|
|
<p> <code>ci</code> (de l'anglais <em>check-in</em>) est la
|
2009-09-20 12:27:14 +02:00
|
|
|
|
commande avec laquelle on dépose la dernière version du fichier dans l'archive
|
|
|
|
|
gérée par RCS.</p>
|
2002-12-16 09:24:58 +01:00
|
|
|
|
|
|
|
|
|
<p>
|
2009-09-20 12:27:14 +02:00
|
|
|
|
Supposons que notre fichier s'appelle <code>monfichier</code>. Voilà ce qui se
|
|
|
|
|
passe la première fois que l'on fait le check-in : (en <em>italique</em>,
|
|
|
|
|
ce qui est tapé par l'utilisateur) :</p>
|
2002-12-16 09:24:58 +01:00
|
|
|
|
|
|
|
|
|
<pre>
|
2009-09-20 12:27:14 +02:00
|
|
|
|
<span class="prompt">corvette ~ $</span> <em>ci monfichier </em>
|
2002-12-16 09:24:58 +01:00
|
|
|
|
RCS/monfichier,v <-- monfichier
|
|
|
|
|
initial revision: 1.1
|
|
|
|
|
enter description, terminated with ^D or '.':
|
|
|
|
|
NOTE: This is NOT the log message!
|
|
|
|
|
>><em>Ceci est une description du fichier</em>
|
|
|
|
|
>> <em>.</em>
|
|
|
|
|
done
|
2009-09-20 12:27:14 +02:00
|
|
|
|
<span class="prompt">corvette ~ $</span>
|
2002-12-16 09:24:58 +01:00
|
|
|
|
</pre>
|
|
|
|
|
|
|
|
|
|
<p>
|
2009-09-20 12:27:14 +02:00
|
|
|
|
Comme vous le voyez, <strong>la dernière ligne doit être un point</strong>,
|
|
|
|
|
afin de signaler au programme qu'on a fini d'écrire nos commentaires.
|
2002-12-16 09:24:58 +01:00
|
|
|
|
</p>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<p>
|
2009-09-20 12:27:14 +02:00
|
|
|
|
Le fichier est sauvé dans l'archive RCS, appelée <code>monfichier,v</code>, et
|
|
|
|
|
effacé. Par défaut, l'archive se trouve dans le même répertoire que le
|
|
|
|
|
fichier de départ. Il est plus pratique d'avoir un <strong>sous-répertoire
|
|
|
|
|
<code>RCS/</code></strong>, dans lequel seront sauvegardées automatiquement
|
2002-12-16 09:24:58 +01:00
|
|
|
|
les versions de vos fichiers.
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
|
|
<p>
|
2009-09-20 12:27:14 +02:00
|
|
|
|
La première fois que vous enregistrez un fichier, donnez une description
|
|
|
|
|
générale du fichier. Les autres fois, vous mettrez juste un commentaire sur la
|
|
|
|
|
version (modifications apportées, date, etc).
|
2002-12-16 09:24:58 +01:00
|
|
|
|
</p>
|
|
|
|
|
|
2009-09-20 12:27:14 +02:00
|
|
|
|
<h3><a name="co">Récupérer le fichier</a></h3>
|
2002-12-16 09:24:58 +01:00
|
|
|
|
<p><code>co</code> (de l'anglais <em>check-out</em>) est la
|
2009-09-20 12:27:14 +02:00
|
|
|
|
commande avec lequel on récupère une version du fichier dans l'archive gérée
|
2002-12-16 09:24:58 +01:00
|
|
|
|
par RCS.</p>
|
|
|
|
|
|
|
|
|
|
<p>
|
2009-09-20 12:27:14 +02:00
|
|
|
|
Supposons que vous voulez sortir la toute dernière version de notre fichier,
|
|
|
|
|
appelé <code>monfichier</code>. </p>
|
2002-12-16 09:24:58 +01:00
|
|
|
|
|
|
|
|
|
<pre>
|
2009-09-20 12:27:14 +02:00
|
|
|
|
<span class="prompt">corvette ~ $</span> <em>co monfichier </em>
|
2002-12-16 09:24:58 +01:00
|
|
|
|
RCS/monfichier,v --> monfichier
|
|
|
|
|
revision 1.1
|
|
|
|
|
done
|
2009-09-20 12:27:14 +02:00
|
|
|
|
<span class="prompt">corvette ~ $</span>
|
2002-12-16 09:24:58 +01:00
|
|
|
|
</pre>
|
|
|
|
|
|
|
|
|
|
<p>
|
2009-09-20 12:27:14 +02:00
|
|
|
|
La version 1.1 de <code>monfichier</code> est rétablie dans le répertoire
|
2002-12-16 09:24:58 +01:00
|
|
|
|
courant.
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
|
|
<p>
|
2009-09-20 12:27:14 +02:00
|
|
|
|
RCS ne sauvegarde pas des copies intégrales de chacune des versions :
|
|
|
|
|
chaque nouvelle version contient en fait les différences par rapport à la
|
|
|
|
|
précédente. C'est ce qui permet de gérer les différentes versions, sans
|
|
|
|
|
utiliser inutilement de la place disque en stockant 10 fois les mêmes données.
|
2002-12-16 09:24:58 +01:00
|
|
|
|
</p>
|
|
|
|
|
|
|
|
|
|
<h2><a name="faq">FAQ</a></h2>
|
|
|
|
|
|
|
|
|
|
<ul>
|
|
|
|
|
|
2009-09-20 12:27:14 +02:00
|
|
|
|
<li> <strong>Lisez bien les messages de RCS :</strong> s'il dit
|
2002-12-16 09:24:58 +01:00
|
|
|
|
|
|
|
|
|
<pre>
|
|
|
|
|
writable monfichier exists; overwrite? [ny](n)
|
|
|
|
|
</pre>
|
|
|
|
|
|
2009-09-20 12:27:14 +02:00
|
|
|
|
c'est qu'il y a déjà un fichier de ce nom dans le répertoire. Il vaut mieux
|
|
|
|
|
répondre <code>n</code>on et vérifier <em>avant</em> si on peut
|
|
|
|
|
l'écraser.</li>
|
2002-12-16 09:24:58 +01:00
|
|
|
|
|
2009-09-20 12:27:14 +02:00
|
|
|
|
<li> <strong>Vous ne voulez pas que le fichier soit effacé après le
|
|
|
|
|
dépôt</strong>. Il faut taper :
|
2002-12-16 09:24:58 +01:00
|
|
|
|
|
|
|
|
|
<pre>
|
|
|
|
|
ci -u monfichier
|
|
|
|
|
</pre>
|
|
|
|
|
|
2009-09-20 12:27:14 +02:00
|
|
|
|
Le fichier contenant les dernières modifications est sauvegardé normalement,
|
|
|
|
|
et vous conservez dans votre répertoire le fichier dans son dernier
|
|
|
|
|
état.</li>
|
2002-12-16 09:24:58 +01:00
|
|
|
|
|
|
|
|
|
|
2009-09-20 12:27:14 +02:00
|
|
|
|
<li> <strong>Vous voulez rétablir la version 1.4 et pas la plus
|
|
|
|
|
récente</strong>. Tapez :
|
2002-12-16 09:24:58 +01:00
|
|
|
|
|
|
|
|
|
<pre>
|
|
|
|
|
co -r1.4 monfichier
|
|
|
|
|
</pre></li>
|
|
|
|
|
|
|
|
|
|
<li> <strong>Vous voulez un historique des versions</strong>, avec les
|
2009-09-20 12:27:14 +02:00
|
|
|
|
commentaires que vous aviez mis. Tapez :
|
2002-12-16 09:24:58 +01:00
|
|
|
|
|
|
|
|
|
<pre>
|
|
|
|
|
rcslog monfichier
|
|
|
|
|
</pre></li>
|
|
|
|
|
|
2009-09-20 12:27:14 +02:00
|
|
|
|
<li> <strong>En quoi <code>monfichier</code> diffère-t-il actuellement de la version
|
|
|
|
|
1.3 ?</strong> Tapez :
|
2002-12-16 09:24:58 +01:00
|
|
|
|
|
|
|
|
|
<pre>
|
|
|
|
|
rcsdiff -r1.3 monfichier
|
|
|
|
|
</pre></li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
|
|
<p>
|
|
|
|
|
Pour plus d'informations, vous pouvez consulter le <a
|
|
|
|
|
href="http://www.freenix.org/unix/linux/HOWTO/mini/RCS.html">Mini-HOWTO
|
|
|
|
|
RCS</a>.</p>
|
|
|
|
|
|
|
|
|
|
<div class="metainformation">
|
2009-09-27 22:00:55 +02:00
|
|
|
|
Auteur : Roberto Dicosmo (1993?). <date value="from git" />
|
2002-12-16 09:24:58 +01:00
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</body>
|
|
|
|
|
</html>
|
|
|
|
|
|
|
|
|
|
|