Logiciel de gestion de versions
Un article de Wikipédia, l'encyclopédie libre.
Un logiciel de gestion de versions est un logiciel de Gestion de configuration permettant de stocker des informations pour une ou plusieurs ressources informatiques permettant de récupérer toutes les versions intermédiaires des ressources, ainsi que les différences entre les versions.
Sommaire |
[modifier] Logiciel de gestion de versions de fichiers
Classiquement, un logiciel de gestion de versions va agir 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 par 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 un 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 version est incrémentée de 1 par rapport à la précédente. On l'appelle révision.
[modifier] Logiciels de gestion de versions
- CVS
- Subversion : http://subversion.tigris.org
- Visual SourceSafe (Société Microsoft)
- Perforce
- ClearCase (Société Rational Software/IBM)
- PVCS
- SCCS
- RCS
- GNU Arch : http://www.gnu.org/software/gnu-arch/
- Bazaar : http://bazaar.canonical.com (compatible avec GNU Arch) et son lointain descendant Bazaar-ng : http://www.bazaar-ng.org
- Synergy (Société Telelogic)
- Bitkeeper
- SCM Surround (Société Seapine)
- DaRCS : http://www.darcs.net/
- git, utilisé entre autres pour le noyau GNU/linux
- Mercurial http://www.selenic.com/mercurial
- So6, logiciel de gestion de configuration de LibreSource
- MECASP, gestion de versions et fusion de variantes : http://mecasp.free.fr
- SVK : http://svk.elixus.org/
Le concept des gestions de versions peut s'adapter à d'autres types de ressources. Les sites WikiWiki (dont le site Wikipédia fait partie) sont des exemples de logiciels de gestion de versions agissant sur des champs de base de données et non sur des fichiers.
[modifier] Comparatif fonctionnel
Fonctionnalité | CVS | Subversion | Mercurial | Visual SourceSafe | Perforce | ClearCase | PVCS (société Serena) | SCCS | RCS | GNU Arch | Synergy | Bitkeeper | Visual Age For Java | SCM Surround | Bazaar-ng | SVK |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Historisation des modifications |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Labels |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Listes de changements |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Statistiques |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Association changement / tâche |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Gestion des besoins |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Multi-site |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Prise en main |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Extensions |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Gamme de prix |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Coût d’utilisation (subjectif) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
LEGENDE
- X :
- ? : à compléter
- 0 :
- figé :
- ODBC :
- à faire :
- open source :
[modifier] Voir aussi
[modifier] Liens internes
[modifier] Lien externe
- List of revision control software en.wikipedia.org liste qui est plus complete
- Version Control du PortlandPatternRepository (en anglais)