CVS

De Wiki de Calcul Québec
Aller à : Navigation, rechercher
Autres langues :anglais 100% • ‎français 100%

CVS (Concurrent Versions System) est un gestionnaire de code source. Il permet de gérer les différentes versions d'un logiciel au cours de son évolution.

Principes généraux

CVS duplique l'arborescence d'un projet de développement logiciel dans un répertoire appelé dépôt ou référentiel. Dans cette arborescence, chaque fichier du projet est remplacé par un fichier dans le format RCS (Revision Control System, l'ancêtre de CVS). Ce fichier contient la dernière version du fichier ainsi que les différences permettant de revenir en arrière pour reconstruire les versions précédentes au besoin. Il contient aussi des commentaires de l'auteur des modifications, ainsi que le numéro et la date de chaque version.

On peut aussi définir des branches secondaires, pour des fonctionnalités expérimentales par exemple, qu'on peut ensuite fusionner à la branche principale (ou tronc).

On peut travailler à plusieurs sur un même projet, CVS nous permettant de récupérer les changements apportés par les autres et de les fusionner avec les nôtres, ou encore de publier nos changements pour les mettre à disposition.

Le référentiel CVS peut se trouver dans un répertoire de l'ordinateur où on roule les commandes de CVS ou sur un ordinateur distant.

Utilisation de base

  • On définit la variable d'environnement CVSROOT pour qu'elle pointe vers le référentiel CVS. Le référentiel peut être
    • local (CVSROOT=/repertoire/cvsroot),
    • distant avec la méthode pserver (CVSROOT=:pserver:cvs@machine.distante.ca:/repertoire/cvsroot),
    • distant avec la méthode rsh ou ssh (CVSROOT=utilisateur@machine.distant.ca:/repertoire/cvsroot). Si on veut utiliser ssh, la variable d'environnement CVS_RSH doit être définie à la valeur « ssh ».
  • Pour un référentiel distant avec la méthode pserver, on doit se connecter avec la commande « cvs login » et fournir le mot de passe (que vous devrez bien sûr connaître).
  • Pour récupérer un module du référentiel CVS, on roule par exemple la commande « cvs checkout siesta ». Cela va créer un répertoire siesta avec la version la plus récente.
  • Pour ajouter un nouveau fichier sous le contrôle de CVS, on roule « cvs add nom_du_fichier ».
  • Pour enlever un fichier du contrôle de CVS, on roule « cvs remove nom_du_fichier ».
  • Pour mettre notre version locale à jour par rapport au référentiel, on roule « cvs update ». Si nos modifications entrent en conflit avec celles d'une autre personne pour certaines lignes d'un fichier, CVS nous indique où sont ces conflits et nous devons les résoudre avant de passer à l'étape suivante.
  • Pour publier nos changements dans le référentiel, on roule « cvs commit nom_du_fichier ».

Logiciels CVS

  • CVS (original)
  • CvsGui (contient WinCVS (pour Windows), MacCVS (pour Mac) et gcvs (pour UNIX/Linux)
  • TortoiseCVS (pour Windows)
Outils personnels
Espaces de noms

Variantes
Actions
Navigation
Ressources de Calcul Québec
Outils
Partager