Tutoriel Webstef : Abal et CVS Résumé Introduction Qu`est

Transcription

Tutoriel Webstef : Abal et CVS Résumé Introduction Qu`est
Tutoriel Webstef : Abal et CVS
Résumé
CVS est un système de contrôle de version de source. Qu’est-ce qu’un tel système ? Peut-on
l’utiliser pour nos développments en Abal ?
Introduction
Si vous partagez des sources avec d’autres programmeurs, vous avez certainement déjà été
confronté à quelques difficultés et interrogations :
•
•
•
•
•
Comment stocker et partager les sources entre plusieurs programmeurs ?
Comment faire pour travailler à plusieurs sur des sources communes sans risquer d’écraser
les modifications d’un autre programmeur ?
Comment être sûr d’avoir toujours la bonne version de sources ?
Comment faire pour retrouver d’ancienne version de source ?
Comment connaître la liste des modifications apportées d’entre deux version d’un produit ?
Qu’est-ce qu’un système de contrôle de version de source ?
Un système de contrôle de version de source permet de répondre à ces questions. L’idée est de
conserver les révisions de chaque source. Ainsi, le travail d’un programmeur n’est jamais perdu : on
peut toujours consulter l’historique des modifications et revenir en arrière. Voici deux définitions
sur Wikipédia (l’encyclopédie libre) :
•
•
Logiciel_de_gestion_de_versions
Contrôle_de_version
Il existe plusieurs logiciels de ce type. Certains sont commerciaux, d’autres sont libres.
Exemples parmis les commerciaux :
•
•
•
•
Visual SourceSafe
Perforce
ClearCase
Bitkeeper
Exemples parmis les libres :
•
•
•
CVS
Subversion
GNU Arch
CVS : Concurrent Versions System
Parmis toutes ces possibilités, il faut bien choisir une solution. L’un des plus connus est CVS. Cet
acronyme signifie Concurrent Versions System. Autrement dit, c’est un système qui permet de gérer
les versions, tout en permettant à plusieurs personnes d’éditer un même fichier simultanément.
C’est un bon choix pour essayer ce genre de système pour les raisons suivantes :
•
•
•
Il est largement utilisé pour le développement de logiciel libre.
C’est lui-même un logiciel libre qui a fait ces preuves.
C’est certainement le plus connu, et il fait toujours référence.
Par Dominique
Page 1/3
Le 28/02/2005
Tutoriel Webstef : Abal et CVS
•
Il y a de nombreux programmes additionnels autour, toujours dans le domaine libre. Par
exemple, il existe des clients en mode graphique, des navigateurs pour explorer les
différentes versions de sources et des outils de statistiques.
Abal et CVS
L’utilisation de CVS pour des projets en Abal ne pose pas de problème particulier.
Du côté du serveur (qui archive toutes les révisions des sources), on utilise généralement un Linux.
Use-IT fait l’affaire. Ce peut aussi être un poste sous Windows, bien que ce ne soit pas le cas le plus
naturel.
Du côté des programmeurs, cela peut également être un poste Linux ou Windows. La
communication avec le serveur peut se faire de différentes maniéres :
•
•
•
En ligne de commande.
C’est la méthode de base avec laquelle on utilise la commande cvs avec différents
arguments pour communiquer avec le serveur.
Avec des scripts intégrés à l’environnement de développement.
Cela est possible avec WinAbal, en passant par les paramètrages qui se trouvent dans le
menu "Outils / Options...", puis sur l’onglet "Contrôle de version des sources".
Avec un utilitaire en mode graphique.
C’est la méthode la plus conviale car il n’est pas nécessaire d’apprendre les commandes
CVS, ni de mettre au point des scripts. Sous Windows, on peut utiliser TortoiseCVS. Il y a
des programmes équivalents sous Linux.
Comment en savoir plus ?
Le but de cet article n’est pas de tout vous apprendre sur CVS (le domaine est assez vaste), mais
plutôt de vous expliquer l’intéret d’un tel système. Vu le sondage fait sur Webstef, il est étonnant
qu’aussi peu de développeurs utilisent ou même connaissent ce type d’outil.
Pour en savoir plus, vous pouvez vous plonger dans les documentations nombreuses sur le sujet. Le
site officiel est cvshome, mais il est en anglais. Il existe des tas de site en français sur CVS, comme
on peut le voir avec Google.
Voici quelques exemples rapidement sélectionnés :
•
•
•
•
•
http://www.commentcamarche.net/cvs-dev/cvs-intro.php3
http://www.linbox.com/ucome.rvt?file=/any/doc_distrib/cvs-1.11/introduction/cvs.html
http://www.freenix.fr/curiosite/cvs.html
http://linux.ensimag.fr/cvs.html
http://echo-linux.alienor.fr/articles/cvs/cvs.html
Pour gagner du temps et pour éviter de vous perdre, vous pouvez aussi faire appel à un consultant.
•
http://www.casidy.com/fr_Formations.html
Conclusion
Une fois que l’on a essayer un logiciel comme CVS, il est difficile de s’en passer : tout en
permettant le partage des sources, il assure de ne plus perdre le travail d’un programmeur en évitant
Par Dominique
Page 2/3
Le 28/02/2005
Tutoriel Webstef : Abal et CVS
les écrasements irréversibles de sources.
Par contre, il introduit de nouvelles notions (révision de sources, fusion de sources, gestion des
conflits, branches, etc) qui ne s’assimilent pas forcément instantanément. Il faut donc prendre le
temps de se former, et d’expérimenter avant que cet outil devienne la pierre angulaire de vos
développements collectifs.
Dans le cadre de Webstef et de l’Abal Search Team, CVS serait un excellent moyen de mettre en
commun certaines de nos sources. Le débat est ouvert !
Par Dominique
Page 3/3
Le 28/02/2005