Flux rss
Collection CommentCaMarche.net

CVS - Introduction

Concurrent Versions System (CVS)
  • CVS

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.

Résultats pour CVS Introduction

[CVS] Documentation http://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
[CVS]Checkout d'une différenc entr 2 versions (Résolu) Bonjour, et désolé des fautes dans le titre. Alors voila le contexte: j'ai un répertoire sous CVS, qui contient plusieurs modules, avec tout un tas de tags, et autres branches. Je voudrais ne récupérer que la différence entre deux versions, dans... www.commentcamarche.net/forum/affich-5831304-cvs-checkout-d-une-differenc-entr-2-versions
Problème avec un tableau exporter de .CVS (Résolu) Bonjour, J'ai un petit problème PHP/CVS.. en effet j'affiche dans une page PHP un document CVS (3 lignes sur 3 colonnes) par l'intermediaire d'un tableau.. le problème est que le tableau ne s'affiche pas correctement ( les... www.commentcamarche.net/forum/affich-2986030-probleme-avec-un-tableau-exporter-de-cvs

Résultats pour CVS Introduction

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
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
[Shell] Transferer des fichiers via sshSSH - Secure SHell Utilisation Informations complémentaires LOGICIELS Sous Linux/Unix Sous Windows Avertissement Utilisation SSH permet d'utiliser des pipelines de commandes, et d'utiliser des tubes d'entrées/sorties comme toute autre... www.commentcamarche.net/faq/sujet-904-shell-transferer-des-fichiers-via-ssh

Résultats pour CVS Introduction

Rt61 serialmonkey sous mandriva 2008.1 (Résolu)Bonjour à tous. Je n'arrive pas a charger le module rt61 après une installation sans problème. [root@localhost Documents]# cd rt61-cvs-2008081705/Module/ [root@localhost Module]# make make[1]: entrant dans le répertoire « /usr/src/linux-2.6.24.7... www.commentcamarche.net/forum/affich-7936823-rt61-serialmonkey-sous-mandriva-2008-1
Probleme compatibilité (Résolu)G telechargé ce fichier: Nagios 3.x (CVS) je voudrais savoir quel version d'oreon serait compatible avec mon nagios? merci pour vos eventuelles reponses www.commentcamarche.net/forum/affich-3027879-probleme-compatibilite
[WinCVS]Nouveau projet log - notion d'admin (Résolu)Bonjour, Je travaille sur un petit projet en PHP et j'ai envi de le traiter avec d'autres collègues. Donc, je dois utiliser un système de gestion de version : je choisis CVS plus exactement WinCVS la version fenêtrée pour Windows !!... www.commentcamarche.net/forum/affich-4611340-wincvs-nouveau-projet-log-notion-d-admin

Résultats pour CVS Introduction

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

Résultats pour CVS Introduction

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