La gestion de version

Dificulté:

A quoi sert un gestionnaire de version ?

Citation internet:

Un gestionnaire de version est un système qui enregistre l'évolution d'un fichier ou d'un ensemble de fichiers au cours du temps de manière à ce qu'on puisse rappeler une version antérieure d'un fichier à tout moment.

Il existe beaucoup de système de gestion de versions sur le marché, les plus connus sont SVN, CVS, Mercurial... Ici nous n'aborderons que Git.

Git vient du monde Linux, il est très à la mode, il permet de travailler en local puis ensuite de transférer ses modifications sur un serveur central. Ne pas confondre Git (l’outil) et GitHub qui est un site web où l’on peut archiver ses données en utilisant Git. GitHub est gratuit pour les projets publics (open-source). Vous pouvez donc héberger votre projet sur GitHub, vous pouvez aussi l’héberger dans votre contexte sur un serveur Linux.

Au départ il faut définir une stratégie de branche.

Le plus simple est de créer une branche principale puis d’archiver toutes les modifications sur cette branche principale. Avec cette solution vous pouvez retrouver toutes vos modifications.

Il existe beaucoup d'autres stratégies pour les branches mais elles sont beaucoup plus complexes.

Exporter son projet Visual Studio vers GitHub

GitHub

La première action est de créer un compte et une nouvelle repository (pour simplifier c'est un répertoire) sur Github.

Se rendre sur le site Github.com. Créer un compte. Sur l’icône en haut à droite cliquer sur « Your profile » pour voir le tableau récapitulatif de votre compte.

L'image ci-dessous montre le tableau de bord de William Darcy, il y a déja plusieurs projets archivés.

GitHub profile

Cliquer sur l’onglet Repositories puis bouton « New ».

Donner un nom à votre repository (généralement le nom de votre projet).

Cliquer sur « Create Repository ».

Vous venez de créer votre repository. GitHub vous donne le lien pour y accéder. Copier le lien.

GitHub lien repository

Git et Visual Studio

Ouvrir votre projet avec Visual Studio.

Clic droit sur votre solution --> « Ajouter la solution au contrôle de code source ».

La fenêtre « Team Explorer » apparaît. Ajouter un commentaire (c’est obligatoire) dans la zone de saisie, par exemple « Première sauvegarde ». Le bouton Commit est dégrisé. Cliquer sur Commit.

Vous venez de créer une archive locale de votre solution avec Git.

C’est bien mais le plus intéressant est d’envoyer votre solution vers une repository GitHub.

Export vers GitHub

Après votre commit local Visual Studio vous demande si vous voulez synchroniser votre projet. C'est le cas car nous voulons nous synchroniser avec GitHub. Cliquer sur « synchroniser ». Copier l’URL de github dans la zone de saisie : « Entrez l’url d’un projet GIT vide ».

Cliquer sur publier. Attendez la fin de la mise à jour.

GitHub lien repository

Repartez dans la page principale de votre compte GitHub. Vous devez voir votre projet ainsi que tout le code source.

GitHub lien repository

C’est terminé. Après chaque modification importante vous pouvez archiver en local puis synchroniser votre projet sur GitHub. Il suffit de se placer au niveau de la solution dans l'explorateur de solution puis clic droit --> "Valider" (commit en anglais) , on revient sur le même processus commit local puis synchronisation avec GitHub, vous n’avez plus besoin de copier l’url de GitHub, Visual Studio la conserve automatiquement.

Difficile de décrire la gestion de versions en peu de mots. Cela ne se maîtrise pas en cinq minutes. Le cahier des charges national impose la présence d'un gestionnaire de versions dans le contexte. La présence ne veut pas dire l'utilisation. Généralement personne n'est interrogé sur la gestion de versions pendant l'examen. Mettre en place Git n'est pas si difficile et cela donne une bonne impression. Attention il ne faut pas aller trop loin car la gestion de version est très complexe et vous pourriez avoir des problèmes le jour de l'examen.