Mode d'emploi rapide pour l'utilisation d'un serveur cvs

Pour pouvoir assurer la mainteance de projets variés (que ce soit un projet de programmation en langage C, C++, java et autre, ou des structures de fichiers quelquonques comme une arborescence html) par plusieures personnes, de manière fiable et tolérante envers les erreurs le système cvs est devenu une sorte de standard.

Rappelons brièvement les problèmes majeurs de l'administration d'un projet:

Tous ces problèmes sont addréssés par un système cvs. Ce système garde (dans le cas idéal sur un serveur central) l'état actuel du projet à disposition des multiples usagers, dans ses différentes déclinaisons (on peut récupérer un projet dans l'état à une certaine date ou à une certaine version).

Dans le cas ou le serveur cvs se trouve sur une machine autre que les machines de développement, l'on aura une sécurité supplémentaire concernant la perennité des données.

Chaque développeur pourra faire avec sa copie locale du projet ce qu'il veut, il n'y a pas de contraintes comme l'imposent d'autres systèmes (ou les développeurs acquièrent un droit exclusif sur les fichiers qu'ils sont en train d'éditer, bloquant de e fait éventuellement les autres développeurs).

Une fois que le développeur sera satisfait de son travail il synchronisera sa version avec celle du serveur en suppléant en plus un message, ceci aura pour effet que les fichiers modifiés changeront de numéro de version, et que les autres développeurs pourront facilement récupérer le message, et ainsi ètre informés des changements encourus quand ils synchroniseront à leur tour leurs versions du projet.

La synchronisation des projets est faite grâce à l'aide entre autres de mécanismes appelés diff ou patch, qui essayeront de maximiser l'introduction des nouvelles parties de manière automatique. Ceci ne fonctionnera pas toujours, et le système rapportera les localisations non-traitables à l'utilisateur.

L'avantage de ce systèmes est qu'en pratique à peu près 90% des modifications sont ainsi insérées automatiquement, de plus les sections à problèmes sont clairement marquées. Les oublis sont impossibles.

La base d'un système cvs sont outre la commande cvs l'existence d'un repositoire cvs, une strucure spéciale présente quelquepart dans le système de fichiers de l'ordinateur (un endroit standard est /usr/local/cvsroot).

La gestion de ce repositoire est grandement facilitée en utilisant des outils comme tkcvs, qui cachera aux utilisateurs les manipulations qui seront décrites plus bas.

Pour faciliter les explications qui suivent nous allons supposer un repositoire cvs (/usr/local/cvsroot) existant sur une machine imaginaire tux.u-strasbg.fr.

Dans ce répositoire nous supposons la présence de différents modules, p.ex. un au nom de www contenant l'arborescence complète du serveur web de tux et un autre appelé projets/jmud contenant un projet de programme en java.



Sous-sections