Git, gestionnaire de version décentralisée

Les gestionnaires de version

Présentation

Les gestionnaires de version sont, de nos jours, fortement utilisés par les développeurs. Et ceci pour plusieurs raisons, tout d'abord ils permettent d'archiver et de conserver les différentes étapes de développement d'un projet. Ce qui procure l'avantage de pouvoir revenir à une version antérieure à tout moment. Il est également possible de consulter les différences entre les révisions. Et enfin, c'est également utilisé pour le travail collaboratif. Chaque développeur dispose du projet en local, et peut à tout moment envoyer ses changements vers le repository principal afin que les autres développeurs puissent bénéficier de son travail.

Centralisé/Décentralisé

La plupart des gestionnaires de version comme Subversion et CVS fonctionnent en mode centralisé. C'est à dire que les changements effectués par les utilisateurs sont envoyés à un serveur, et c'est sur se dernier que les autres développeurs vont se synchroniser pour récupérer les changements.


Ici une illustration du fonctionnement en mode centralisé.


Git lui, est un gestionnaire de version décentralisée, c'est à dire qu'il n'est pas nécessaire de disposer d'un serveur maître pour l'utiliser. Chacun des utilisateurs peuvent se synchroniser entre eux.


Ici une illustration du fonctionnement en mode décentralisé.


Cependant, il est également possible, en mode décentralisé, de disposer d'un serveur maître. Ceci par exemple pour toujours avoir un serveur disponible, sur lequel il est possible, à n'importe quel instant de récupérer le projet.


Ici une illustration du fonctionnement en mode décentralisé, mais avec un serveur maître quand même.