De quoi a-t-on besoin? Il faut le programme CVS. On peut l'utiliser en "stand-alone", lorsque tous les développeurs se logent sur la même machine. Mais nous allons ici détailler l'utilisation d'un pserver, où les programmeurs se connectent par le biais d'un réseau TCP/IP (Internet par exemple, ou un réseau local).
L'administrateur du serveur CVS doit donner aux développeurs les
informations
suivantes : le nom du serveur, le chemin d'accès
(/var/cvs/superprojet
), ainsi qu'un login et un mot de passe.
Il ne faut pas nécessairement un compte Unix sur le serveur pour utiliser
le CVS.
Pour vérifier que CVS est bien installé sur votre machine, essayez
de lancer cvs
, tout simplement. S'il trouve, il doit répondre par
une page d'aide. D'autre part, pour vérifier que le serveur CVS de
démonstration est disponibles, essayez de faire ping cvs.enix.org
.
Il n'y a presque rien a faire. Sauf : positionner une variable d'environnement, CVSROOT, afin d'indiquer le serveur CVS qu'on souhaite utiliser, ainsi que le nom d'utilisateur et la repository.
Par exemple :
export CVSROOT=:pserver:ecrivain@cvs.enix.org:/var/cvs/demo
NB : il est aussi possible d'utiliser l'option -d
du programme
cvs
, par exemple cvs -d :pserver:ecrivain@cvs.enix.org:/var/cvs/demo
login
.
Sur un même serveur CVS, on peut avoir plusieurs projets qui
cohabitent, dans des repositories. Et dans chaque repository
(en général, on peut envisager une par projet), on a des modules.
En effet, lorsqu'on travaille sur un projet, celui-ci est compose de
plusieurs modules (completement independants) qu'on rapatrier separement
depuis le CVS. Par exemple, on peut avoir un module doc, un module
src, et un module bench. Ici, le login est ecrivain
, le
serveur est cvs.enix.org
, et la repository est /var/cvs/demo
.
On suppose qu'on est dans un nouveau repertoire (par exemple DemoCVS).
Cette operation n'est à effectuer que la première fois qu'on travaille sur la repository. Il suffit de taper :
cvs login
Le mot de passe va être demandé et verifié auprès du serveur. Pour cette
demonstration, utiliser le mot de passe ecrivain
. Si le programme
revient à l'invite sans rien dire, c'est qu'il n'y a pas de problème.
Sinon il doit donner un message d'erreur (type : mot de passe invalide,
par exemple).
Créons un repertoire trucmuche
. (Pour que la demo marche,
mettez autre chose que trucmuche
, il y a surement quelqu'un qui l'a déjà
mis!) Dans ce répertoire, placez un fichier main.c
et un
Makefile
, par exemple, avec quelques lignes chacun.
Ensuite, il faut (en restant dans le répertoire trucmuche
)
taper la commande :
cvs import trucmuche HEAD DEVEL
Normalement, un éditeur va se lancer pour demander de taper un message, qui sera incorporé au log des fichiers.
import
signifie qu'on veut ajouter un module avec les fichiers
existants dans le repertoire,
trucmuche
est le nom du module,
HEAD
et DEVEL
sont des tags qui servent
à marquer des branches. Sans entrer dans les détails, cela
permet de maintenir de front plusieurs versions du programme, par exemple
une version ALPHA
et une version STABLE
, et de les
faire évoluer séparément, en intégrant au coup par coup les modifications
de l'une dans l'autre.
Une fois que l'import est effectué, on peut (il est même recommandé) d'effacer le repertoire trucmuche (sauf bien entendu s'il y a eu une erreur!).