Flux rss

CVS - Introduction

Bookmark Ajouter aux favoris / Partager

Introduction à CVS

CVS (Concurrent Versions System) est un système de contrôle de versions client-serveur permettant à plusieurs personnes de travailler simultanément sur un même ensemble de fichiers. Les gros projets de développement (en particulier les projets Open Source) s'appuient généralement sur ce type de système afin de permettre à un grand nombre de développeurs de travailler sur un même projet. CVS permet, comme son nom l'indique, de gérer les accès concurrents, c'est-à-dire qu'il est capable de détecter les conflits de version lorsque deux personnes travaillent simultanément sur le même fichier.

Le fonctionnement de CVS s'appuie sur une base centralisée appelée « repository », hébergée sur un serveur, contenant l'historique de l'ensemble des versions successives de chaque fichier. Le repository stocke les différences entre les versions successives, les dates de mise à jour, le nom de l'auteur de la mise à jour et un commentaire éventuel, ce qui permet un réel suivi des modifications, tout en optimisant l'espace de stockage dédié au projet.

Chaque personne travaillant sur le projet possède un « répertoire de travail » (en anglais « working copy » ou « sandbox », traduisez « bac à sable »), c'est-à-dire un répertoire contenant une copie de la base CVS (repository).

checkout

A l'aide d'un client CVS, chaque utilisateur souhaitant travailler sur le projet (pour modifier des fichiers ou simplement pour voir la dernière version des fichiers dans la base) récupère une copie de travail grâce à une opération appelée « checkout ».

checkout

commit

Lorsque l'utilisateur a terminé de modifier les fichiers, il peut transmettre les modifications à la base. Cette opération est appelée « commit ». Ainsi plusieurs développeurs peuvent travailler simultanément sur une copie du repository et transmettre leurs modifications.

commit

update

S'il arrive qu'un utilisateur tente de transmettre ses modifications alors qu'un autre utilisateur a lui-même modifié ce fichier précédemment, CVS va détecter un conflit. Si les modifications portent sur des parties différentes du fichier, le système CVS peut proposer une fusion des modifications, grâce à une opération appelée diff, sinon CVS va demander à l'utilisateur de fusionner manuellement les modifications. Il est à noter que les fusions ne peuvent s'appliquer qu'aux fichiers textes. CVS peut toutefois gérer des fichiers binaires dans sa base, mais il n'a pas été prévu dans ce but. Les modifications apportées par les autres utilisateurs ne sont pas automatiquement répercutées par CVS sur la copie locale, il est donc nécessaire, avant chaque modification de fichier, de mettre à jour sa copie de travail grâce à une opération appelée « update », afin de limiter les risques de conflits.

update

release

Enfin, lorsque l'utilisateur a terminé son travail et qu'il a envoyé au serveur CVS toutes les modifications apportées, il peut s'il le désire vider son répertoire de travail grâce à l'opération baptisée « release ».

Serveur CVS

Le serveur CVS est disponible, sous licence libre, pour un grand nombre de systèmes d'exploitation :

Le code source ainsi que des versions binaires (exécutables) du serveur CVS sont téléchargeables sur http://www.cvshome.org.

Clients CVS

CVS est prévu à l'origine pour fonctionner en ligne de commande, avec les différentes commandes évoquées ci-dessus. Il existe toutefois un certain nombre de clients CVS graphiques :

  • CVSWeb est une interface web permettant d'accéder au repository et de voir les versions des différents fichiers qui le composent.
  • TortoiseCVS est un client graphique intégré à Windows permettant d'effectuer les différentes opérations grâce au menu contextuel associé au bouton droit de la souris dans l'explorateur.


Dernière modification le mardi 14 octobre 2008 à 17:40:32.Ce document intitulé « CVS - Introduction » issu de Comment Ça Marche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
[CVS]cvs pour windows Bonjour je voudrais installer cvs sur mon pc et y accéder a partir d'un autre pc. Je n'arrive pas a trouver de version téléchargeable pour windows. Est ce que qqun peut m'indiquer un lien ou il y a une version de cvs pour windows téléchargeable. Merci www.commentcamarche.net/forum/affich-2051129-cvs-cvs-pour-windows
Install cvs je suis nouveau sous linux pour un stage en entreprise je galère pour installer cvs help me please ... www.commentcamarche.net/forum/affich-587954-install-cvs
Comment installer CVS server?? bonjour, je n arrive pas a trouver un bon tuto pour installer CVSNT ou serveur et, je suis completement perdu avec les ligne de commande de certains tuto. Si vous avez deja installé CVS ou si vous maitriser, pourriez vous me dire comment installer pas... www.commentcamarche.net/forum/affich-1717072-comment-installer-cvs-server
[CVS] Documentationhttp://web.iu-vannes.fr/docinfo/ssites/Outils_GNU/EX_cvs/cvs_toc.html pour la table des matières, ou http://web.iu-vannes.fr/docinfo/ssites/Outils_GNU/EX_cvs/cvs.html www.commentcamarche.net/faq/sujet-1242-cvs-documentation
Exporter à coup sûr du CSVExporter des données au format CSV n'est pas si trivial qu'il n'y paraît. Dès que vos données contiennent des virgules ou des guillemets, tout semble partir en vrille. Il y a une astuce. Voici comment procéder pour exporter à coup sûr vos... www.commentcamarche.net/faq/sujet-7273-exporter-a-coup-sur-du-csv
Utiliser Git sous WindowsAu même titre que SVN ou CVS, GIT est un protocole de gestion de version sous licence libre. Toutefois, GIT est plus spécifique car il a été créé principalement pour le développement du noyau Linux. Aujourd'hui, il est tout à fait envisageable comme... www.commentcamarche.net/faq/sujet-13094-utiliser-git-sous-windows
Configuration cvs sous debianJ'ai un petit problème avec cvs. J'ai un serveur local (debian) avec lequel je communique en ligne de commande via ssh. Il fait aussi serveur apache, php, mysql. Pour mon développement j'aimerai utiliser un cvs. J4ai donc installer le paquet, mais je... www.commentcamarche.net/forum/affich-851442-configuration-cvs-sous-debian
CVS localBonjour! Voilà, j'aimerais utiliser CVS chez moi en local (sans serveur). Est ce possible, si oui, quelle version utiliser? Est ce possible avec ECLIPSE ? j'ai regardé le tutoriel de Mister Doudoux, mais on n'y parle que d'une version serveur. J'ai... www.commentcamarche.net/forum/affich-812619-cvs-local
Suppression définitive d'un fichier sur CVSBonjour, Je voudrais pouvoir supprimer définitivement un fichier d'un serveur CVS, pour pouvoir réduire la taille du dépôt. je voudrais donc qu'il ne soit plus possible du tout de restaurer ce fichier. Est-ce possible? quelqu'un sait-il comment faire?... www.commentcamarche.net/forum/affich-4984857-suppression-definitive-d-un-fichier-sur-cvs
Télécharger WinCVSWinCVS est une interface graphique (GUI - Graphical User Interface) pour CVS fonctionnant sous les systèmes Windows. www.commentcamarche.net/telecharger/telecharger-34055058-wincvs
Télécharger TortoiseCVSTortoiseCVS est un client CVS libre permettant de gérer les fichiers via CVS directement à partir de l'explorateur Windows. Grâce à tortoiseCVS, il est possible d'emprunter (checkout), d'actualiser (update), de valider (commot) et de voir les... www.commentcamarche.net/telecharger/telecharger-34055059-tortoisecvs
Fichier CSVFormat CSV Un fichier CSV est un fichier tableur, contenant des données sur chaque ligne séparés par un caractère de séparation (généralement une virgule ou un point-virgule). Comment lire un fichier CSV ? Il peut être lu avec un tableur tel que... www.commentcamarche.net/contents/fichier/csv.php3