- Logiciel de gestion de versions
-
Un logiciel de gestion de versions (ou VCS en anglais, pour Version Control System) est un logiciel qui permet de stocker un ensemble de fichiers en conservant la chronologie de toutes les modifications qui ont été effectuées dessus. Il permet notamment de retrouver les différentes versions d'un lot de fichiers connexes.
Les logiciels de gestion de versions sont utilisées notamment en ingénierie du logiciel pour conserver le code source relatif aux différentes versions d'un logiciel.
Sommaire
Définition
Un logiciel de gestion de versions agit sur une arborescence de fichiers afin de conserver toutes les versions des fichiers, ainsi que les différences entre les fichiers.
Ce système permet par exemple de mutualiser un développement. Un groupe de développeurs autour d'un même développement se servira de l'outil pour stocker toute évolution du code source. Le système gère les mises à jour des sources pour chaque développeur, conserve une trace de chaque changement. Ceux-ci sont, en bonne utilisation, chaque fois accompagnés d'un commentaire. Le système travaille par fusion de copies locale et distante, et non par écrasement de la version distante par la version locale. Ainsi, deux développeurs travaillant de concert sur une même source, les changements du premier à soumettre son travail ne seront pas perdus lorsque le second, qui a donc travaillé sur une version non encore modifiée par le premier, renvoie ses modifications.
Généralement, chaque nouvelle version d'un fichier est appelée révision et son numéro de version est incrémentée de 1 par rapport à la précédente.
Logiciels de gestion de versions
Local
Libre :
Modèle client-serveur
Libre :
- CVS
- JediVCS
- MECASP, gestion de versions et fusion de variantes
- So6 : Logiciel de gestion de configuration de LibreSource
- Subversion (SVN)
Propriétaire :
- Dimensions CM (Serena Software)
- ALDON Lifecycle Manager (ALDON)
- ClearCase (Rational Software/IBM)
- IBM Rational Team Concert (Rational Software/IBM)
- MKS Integrity
- Perforce
- SCM Surround (Société Seapine)
- IBM Rational Synergy
- Vault (SourceGear)
- Visual SourceSafe (Microsoft)
- Microsoft Visual Studio Application Lifecycle Management
- Team Foundation Server (Microsoft)
Distribué
Libre :
- Bazaar : compatible avec GNU Arch et son lointain descendant Bazaar-ng [1]
- darcs
- Fossil
- Git : utilisé entre autres pour le noyau Linux
- GNU Arch
- Mercurial
- Monotone
- PVCS (Serena Software)
- SVK, basé sur le système de fichier de Subversion
Propriétaire :
Autres utilisations
Le concept des gestions de versions peut s'adapter à d'autres types de ressources. Les Wikis (tel Wikipédia) sont des exemples de logiciels de gestion de versions agissant sur des champs de base de données et non sur des fichiers.
Des logiciels comme Tailor permettent en outre d'effectuer des conversions entre les formats d'archive des différents logiciels de contrôle de version.
Voir aussi
Articles connexes
Liens externes
- List of revision control software en.wikipedia.org liste qui est plus complète
- Version Control du PortlandPatternRepository (en anglais)
Wikimedia Foundation. 2010.