Outils de gestions de versions

16

Click here to load reader

description

Système permettant de gérer les modifications d’un ensemble de données. Il agit sur une arborescence de fichiers afin de conserver toutes les versions des fichiers, ainsi que les différences entre les fichiers. Un groupe de développeurs autour d'un même développement se servira de l'outil pour stocker toute évolution du code source.

Transcript of Outils de gestions de versions

Page 1: Outils de gestions de versions

Outils de Gestion de Version

Elaborés par :Ali Ben Messaoud

Fares Jemni

Page 2: Outils de gestions de versions

Plan

■ Introduction■ C’est quoi un SGV et comment il fonctionne ?■ Concepts d’un système de gestion de version■ Les notions de base communes à tous les

SGV■ Mode de fonctionnement■ Les different logiciels de gestion de version■ Conclusion

Page 3: Outils de gestions de versions

Introduction (1)

■ Evolution rapide des technologies liées à l'informatique.

■ Développement rapide des méthodes de travail dans l'ingénieurie des logiciels et les applications pour entreprise.

■ Besoin d'un système qui conserve la source et aide à la collaboration.

Page 4: Outils de gestions de versions

Introduction (2)

■ Qu’est un système de gestion de version.

■ Comment il fonctionne?

■ Et quels sont les différents types?

Page 5: Outils de gestions de versions

C’est quoi un SGV et comment il fonctionne ? (1)

■ Système permettant de gérer les modifications d’un ensemble de données.

■ Il agit sur une arborescence de fichiers afin de conserver toutes les versions des fichiers, ainsi que les différences entre les fichiers.

■ Un groupe de développeurs autour d'un même développement se servira de l'outil pour stocker toute évolution du code source.

Page 6: Outils de gestions de versions

C’est quoi un SGV et comment il fonctionne ? (2)

■ Le système gère les mises à jour des sources qui conserve une trace de chaque changement.

■ Accompagnés d'un commentaire. ■ Le système travaille par fusion de copies locale et

distante. ■ Pas écrasement.■ 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.

Page 7: Outils de gestions de versions

Concepts d’un système de gestion de version (1)

■ Version ou révision :Les logiciels évoluant, chaque étape d'avancement est appelée version (ou revision).

■ Dépôt :Les fichiers versionnés sont mis à dispositions sur un dépôt, c'est-à-dire un espace de stockage public géré par le logiciel de gestion de versions.

Page 8: Outils de gestions de versions

Concepts d’un système de gestion de version (2)

■ Un module :Ensemble de fichiers sources ou de répertoires constituant un projet.

■ Les branches:Les branches peuvent être utilisées pour créer des lignes de développement de plusieurs versions d'un même produit, comme d'avoir un endroit pour rétroporter corrections de bugs dans une version stable. Le fait de vouloir rassembler deux branches est une fusion de branches.

Page 9: Outils de gestions de versions

Concepts d’un système de gestion de version (3)

■ Les tags : Marques symboliques sur une révision et de définir les versions du projet ainsi que pour nommer des branches.

Page 10: Outils de gestions de versions

Les notions de base communes à tous les SGV'check out' est l'opération de chargement, copie de fichier(s) depuis le dépôt dans l'espace de travail.ajout - 'add' ajoute le(s) fichier(s) dans le mécanisme de gestion de version'check in' ou 'commit' envoie le(s) fichier(s) - si modifié(s) - dans le dépôt; Un message de 'commit' est un message décrivant la modification enregistrée dans le dépôthistorique - 'log' ou 'Changelog' - donne à la liste des modifications'update' ou 'synch' synchronise les fichiers locaux avec les autres développeurs ou le dépôt de référence'revert' permet de revenir sur les dernières modifications locales

Page 11: Outils de gestions de versions

Mode de fonctionnement

Il existe modes :■ Local Version Control Systems■ Distributed Version Control Systems■ Distributed Version Control Systems

Page 12: Outils de gestions de versions

Local Version Control Systems

■ Simple■ Un seul utilisateur à la fois,

une seule copie de travail■ Les systèmes locaux de VCS

souffrent du problème de disponibilité le fait qu’on peut perdre toute l'histoire du projet en un seul endroit si la base de données est endommagée.

Page 13: Outils de gestions de versions

Distributed Version Control Systems

■ Dépot stocké dans un endroit partagé ○ par le système de fichiers ○ par le réseau

■ Plusieurs copies de travail en parallèle : opérations de fusion

■ A la perte du disque dur ou la base de données centrale, les sauvegardes ne seront pas pris en compte.

Page 14: Outils de gestions de versions

Distributed Version Control Systems

■ Plus de dépot centralisé■ Chaque développeur a sa copie

avec ses branches privées■ Opérations de synchronisation

avec les autres dépots.■ Simplification de la fusion de

branches en gardant l’historique des fusions.

■ Plus de Liberté, mais risque de dispersion...

Page 15: Outils de gestions de versions

Les different logiciels de gestion de version

■ TortoiseSVN■ SmartSVN■ EasySVN■ VisualSVN■ Blsvn■ KDESVN

Page 16: Outils de gestions de versions

Conclusion

■ Technologie en pleine (r)évolution.■ Très importante dans les domaines de

développement