Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
cvs [Le 26/07/2008, 21:17]
claudius01
cvs [Le 11/09/2022, 11:50] (Version actuelle)
moths-art Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892)
Ligne 1: Ligne 1:
-{{tag>breezy dapper edgy console ​reseau developpement}}+{{tag>Xenial ​console ​réseau programmation}}
  
 ---- ----
  
  
 +====== CVS : utilisation en tant que client ======
  
 +****CVS****,​ acronyme de Concurrent Versions System ou de Concurrent Version System ou de Concurrent Versioning System, est un logiciel libre (licence GPL) de gestion de versions. Il est très utilisé dans le domaine du logiciel libre. Il peut aussi bien fonctionner en mode ligne de commande, qu'à travers une interface graphique.
  
 +===== Pré-requis =====
 + 
 +  * Disposer des [[:​sudo|droits d'​administration]].
 +  * Disposer d'une connexion à Internet configurée et activée.
  
 +=====Installation=====
  
 +Il suffit d'​[[:​tutoriel:​comment_installer_un_paquet|installer le paquet]] **[[apt>​cvs]]**.
  
 +=====Utilisation=====
  
 +Ce logiciel peut fonctionner en local (repository CVS local) ou en mode client-serveur (repository CVS distant). Dans les deux cas, un repository de travail, toujours situé localement, contient un ou plusieurs modules qui est le reflet du repository CVS. Un module est constitué d'une hiérarchie de fichiers versionnés. La localisation du repository CVS est définie dans la variable d'​environnement $CVSROOT.
  
-====== ​CVS : utilisation en tant que client ====== +CVS offre principalement ​les opérations ​suivantes ​:\\
- +
-****CVS****,​ acronyme de Concurrent Versions System ou de Concurrent Version System ou de Concurrent Versioning System, est un logiciel libre (licence GPL) de gestion de versions. Il est très utilisé dans le domaine du logiciel libre. Il peut aussi bien fonctionner en mode ligne de commande, qu'à travers une interface graphique. Vous devriez pouvoir facilement installer ​les paquets via votre [[:​synaptic|gestionnaire de paquets]]. +
- +
-  sudo apt-get install cvs +
- +
-Ce logiciel peut fonctionner en local (repository CVS local) ou en mode client-serveur (repository CVS distant). Dans les deux cas, un repository de travail, toujours situé localement, contient un ou plusieurs modules qui est le reflet du repository CVS. Un module est constitué d'une hiérarchie de fichiers versionnés. La localisation du repository CVS est définie dans la variable d'​environnement CVSROOT.  +
- +
-CVS utilise ces opérations :\\+
 * admin : Administrer le repository (dans le cas d'une utilisation multi-utilisateurs)\\ * admin : Administrer le repository (dans le cas d'une utilisation multi-utilisateurs)\\
 * checkout : Obtenir une copie locale des fichiers\\ * checkout : Obtenir une copie locale des fichiers\\
 * commit : Envoyer ses modifications\\ * commit : Envoyer ses modifications\\
-* update : Obtenir les modifications des autres\\+* update : Mettre à jour le repository de travail par rapport au repository CVS\\
 * diff : Voir les modifications entre les versions\\ * diff : Voir les modifications entre les versions\\
 * log : Voir les commentaires sur les différentes versions\\ * log : Voir les commentaires sur les différentes versions\\
-* import : Créer un nouveau module\\ +* import : Créer un nouveau module ​dans le repository CVS à partir d'un répertoire local\\ 
-* status : Voir le status d'un fichier\\+* status : Voir le status d'un fichier ​ou d'un module\\
 * tag : Poser une marque de révision ou de branche sur un fichier ou sur le module\\ * tag : Poser une marque de révision ou de branche sur un fichier ou sur le module\\
 * add/remove : Ajouter/​Supprimer un fichier ou un module\\ * add/remove : Ajouter/​Supprimer un fichier ou un module\\
 +
 +L'aide en ligne de chaque commande est accessible au moyen de la commande : $ cvs ---help <​commande>​
 +  cvs --help checkout
 +
 +Usage:
 +  cvs checkout [-ANPRcflnps] [-r rev] [-D date] [-d dir]
 +    [-j rev1] [-j rev2] [-k kopt] modules...
 +        -A      Reset any sticky tags/​date/​kopts.
 +        -N      Don't shorten module paths if -d specified.
 +        -P      Prune empty directories.
 +        -R      Process directories recursively.
 +        -c      "​cat"​ the module database.
 +        -f      Force a head revision match if tag/date not found.
 +        -l      Local directory only, not recursive
 +        -n      Do not run module program (if any).
 +        -p      Check out files to standard output (avoids stickiness).
 +        -s      Like -c, but include module status.
 +        -r rev  Check out revision or tag. (implies -P) (is sticky)
 +        -D date Check out revisions as of date. (implies -P) (is sticky)
 +        -d dir  Check out into dir instead of module name.
 +        -k kopt Use RCS kopt -k option on checkout. (is sticky)
 +        -j rev  Merge in changes made between current revision and rev.
 +(Specify the ---help global option for a list of other help options)
  
  
Ligne 37: Ligne 62:
  
 Vous devez spécifier en argument le ou les fichiers ou répertoire que vous voulez extraire. Par exemple : Vous devez spécifier en argument le ou les fichiers ou répertoire que vous voulez extraire. Par exemple :
- +<​code>​cvs checkout [-r <​tag>​] <​nom_de_fichier>​ | <​nom_de_répertoire></​code>
-  $ cvs checkout [-r <​tag>​] <​nom_de_fichier>​ | <​nom_de_répertoire>​+
  
 Notez que l'​utilisation de checkout est récursive. Notez que l'​utilisation de checkout est récursive.
Ligne 47: Ligne 71:
  
 et crée un répertoire htdocs/​actions/​ldd contenant le fichier index.wml ainsi qu'un répertoire CVS qui contient des fichiers administratifs et qu'il convient d'​ignorer (mais de ne pas effacer). Vous pouvez maintenant travailler sur le fichier index.wml. et crée un répertoire htdocs/​actions/​ldd contenant le fichier index.wml ainsi qu'un répertoire CVS qui contient des fichiers administratifs et qu'il convient d'​ignorer (mais de ne pas effacer). Vous pouvez maintenant travailler sur le fichier index.wml.
 +
  
 ==== Commit ==== ==== Commit ====
  
-Le commit est l'​opération inverse. Le but du jeu est de mettre à jour sur le repository ​des fichiers ​que vous avez modifiés. Par exemple :+Le commit est l'​opération inverse. Le but du jeu est de mettre à jour dans le repository ​CVS et à partir du repository local le(s) fichier(s) ou le module complet ​que vous avez modifiés. Par exemple : 
 +<​code>​cvs commit <​nom_de_fichier>​ | <​nom_de_répertoire></​code>​ 
 +Notez que l'​utilisation de commit est récursive.
  
-  $ cvs commit <​nom_de_fichier>​ +CVS demande ensuite de rentrer des informations sur la nature des modifications effectuées (afin d'​archiver leur trace dans un format facilement compréhensible par des humains). Par défaut, CVS exécute la commande vi, mais cette commande peut être modifiée au besoin en affectant le nom d'un éditeur de texte quelconque à la variable $EDITOR (par exemple emacs).
- +
-CVS demande ensuite de rentrer des informations sur la nature des modifications effectuées (afin d'​archiver leur trace dans un format facilement compréhensible par des humains). Par défaut, CVS exécute la commande vi, mais cette commande peut être modifiée au besoin en affectant le nom d'un éditeur de textes ​quelconque à la variable $EDITOR (par exemple emacs).+
  
 Enregistrez le texte de vos descriptions que vous venez de saisir (sous vi, ESC :x), et ensuite CVS mettra à jour vos modifications dans le repository. Notez que si vous mettez à jour plusieurs fichiers en même temps, CVS vous demandera certainement plusieurs descriptions pour vos modifications (vous pouvez mettre les mêmes). Enregistrez le texte de vos descriptions que vous venez de saisir (sous vi, ESC :x), et ensuite CVS mettra à jour vos modifications dans le repository. Notez que si vous mettez à jour plusieurs fichiers en même temps, CVS vous demandera certainement plusieurs descriptions pour vos modifications (vous pouvez mettre les mêmes).
  
 Si votre description tient en quelques mots, vous pouvez vous passer de l'​étape emacs/vi en mettant votre texte sur la ligne de commande, en utilisant l'​option -m Si votre description tient en quelques mots, vous pouvez vous passer de l'​étape emacs/vi en mettant votre texte sur la ligne de commande, en utilisant l'​option -m
- +<​code>​cvs commit -m "Ajout du mois de mai" <​nom_de_fichier></​code>
-  $ cvs commit -m "Ajout du mois de mai" <​nom_de_fichier>​+
  
 ==== Update ==== ==== Update ====
  
 La commande update permet de récupérer sur sa copie locale les modifications effectuées par d'​autres personnes. Par exemple, pour recevoir toutes les modifications : La commande update permet de récupérer sur sa copie locale les modifications effectuées par d'​autres personnes. Par exemple, pour recevoir toutes les modifications :
- +<​code> ​cvs update</​code>​
-  $ cvs update+
  
 Un conflit peut survenir si un fichier modifié localement a aussi été modifié par un autre utilisateur,​ qui en a fait un commit. Dans ce cas, CVS réunit les versions dans un fichier qu'il faut alors "​merger"​ (résoudre les conflits). Un conflit peut survenir si un fichier modifié localement a aussi été modifié par un autre utilisateur,​ qui en a fait un commit. Dans ce cas, CVS réunit les versions dans un fichier qu'il faut alors "​merger"​ (résoudre les conflits).
Ligne 72: Ligne 95:
 ==== Diff ==== ==== Diff ====
 La commande diff, liste les différences entre la version locale d'un fichier et celle qui se trouve actuellement sur le référentiel. La commande diff, liste les différences entre la version locale d'un fichier et celle qui se trouve actuellement sur le référentiel.
- +<​code>​cvs diff <​nom_de_fichier></​code>
-  $ cvs diff <​nom_de_fichier>​+
  
 Il apparaît aussi utile de pouvoir comparer le fichier actuel avec une révision antérieure particulière : Il apparaît aussi utile de pouvoir comparer le fichier actuel avec une révision antérieure particulière :
- +<​code>​cvs diff -r 1.5 -r 1.6 <​nom_de_fichier></​code>
-  $ cvs diff -r 1.5 -r 1.6 <​nom_de_fichier>​+
  
  
Ligne 83: Ligne 104:
  
 Log permet de lister un historique sommaire des révisions comprenant les dates et numéros respectifs, ainsi que les commentaires spécifiés lors du commit (option -m ou saisis depuis l'​éditeur appelé par cvs), utiliser la commande : Log permet de lister un historique sommaire des révisions comprenant les dates et numéros respectifs, ainsi que les commentaires spécifiés lors du commit (option -m ou saisis depuis l'​éditeur appelé par cvs), utiliser la commande :
 +<​code>​cvs log <​nom_de_fichier></​code>​
 +  ​
  
-  $ cvs log <​nom_de_fichier>​ 
  
 ===== Sources et références ===== ===== Sources et références =====
  
-  * TODO +  * **(en)** [[https://​www.gnu.org/​software/​trans-coord/​manual/​cvs/​|Manuel détaillé]] 
- +-----
------ +
  
-//​Contributeurs : [[:utilisateur:​claudius01]]//​+//​Contributeurs : [[:utilisateurs:​claudius01]]//​
  • cvs.1217099824.txt.gz
  • Dernière modification: Le 26/07/2008, 21:27
  • (modification externe)