Subversion (SVN) pour les nuls – partie 1

Subversion (SVN) pour les nuls – partie 1

Subversion, c’est quoi ?

Pour faire simple, subversion permet de centraliser les sources de vos applications sur un dépôt distant.

Globalement, comment ça marche ?

Pour faire simple, vous disposez d’une copie locale de vos sources sur votre pc, et une copie sur le dépôt, qui sont synchronisés à la demande.

Architecture des dépôts

Vous trouverez souvent comme architecture de projets sur subversion l’architecture suivante :

– dépôt projet test
— trunk
——- 1.0.1
— tags
——- 1.0
— branches

Je vais tenter de vous expliquer en quelques lignes à quoi sert chacun de ces repertoires.

trunk = Tronc de l’application, ce répertoire contient la dernière version en développement de l’application.
tags = Versions figés de l’application (version stables), il faut se dire que ce repertoire est read-only, il permet de conserver les sources des anciennes versions.
branches = version dérivée de la version principale.

Petite mise en application : je travaille sur une version 2.0 (qui est dans mon trunk), j’ai encore la version 1.0 en production sur laquelle je dois effectuer un correctif, je crée une branche 1.0.1 par exemple à partir du tag 1.0 et je travaille sur cette branche.

Ci-dessous 2 types de structure, celle que j’utilise chez moi, et celle utilisée à mon travail.

Chez moi, j’utilise 3 dépots (web / soft / mobile), dans celui-ci j’ai donc mes sous repertoires :

– web
—- projet 1
—– trunk
——— 1.0.1
—– tags
——— 1.0
—– branches
—- projet 2
—– trunk
——— 1.0.1
—– tags
——— 1.0
—– branches

Ou ci-dessous l’architecture que j’utilise au travail, nous avons 2 serveurs subversion, 1 soft et 1 web dans lequel nous avons 1 dépot par client.

– client 1
—- projet 1
—– trunk
——— 1.0.1
—– tags
——— 1.0
—– branches
– client 2
—- projet 2
—– trunk
——— 1.0.1
—– tags
——— 1.0
—– branches

Installation d’un serveur Subversion

Dans ce tutoriel, nous utiliserons le serveur VisualSVN, celui-ci est plutôt pas mal, car il intègre directement Apache + toutes les configurations nécessaires au bon fonctionnement de subversion.

Pour le télécharger, rendez-vous sur http://www.visualsvn.com/server/.

Durant l’installation, on vous demandera où stocker les dépôts (repositories). Et sur quel port sera disponible le serveur SVN, vous pouvez passer par https ou http normal, c’est selon votre choix.

On vous demandera également quel type d’authentification vous souhaitez utiliser, l’authentification subversion ou Windows, soit une authentification donc intégré dans subversion, ou vous pouvez donc créer des utilisateurs et des groupes afin de gérer les droits d’accès a vos différents dépôts, ou soit directement par l’active directory.

Toutes ces configurations sont modifiables par la suite si jamais vous vous trompez.

Création d’un nouveau dépôt

Une fois l’installation terminée, vous devriez trouver un petit outil se nommant VisualSVN Server Manager, lancez-le.

visualsvnserver001

Pour créer un nouveau dépôt, vous pouvez-faire tout simplement un petit clic droit sur « Repositories » et « Create new repository ». Puis, comme évoqué précédemment, vous êtes maître de l’architecture de vos projets, vous pouvez donc créer plusieurs projets dans un dépôt (comme ci dessous).

visualsvnserver0011

Comme vous pouvez le voir, je rajoute juste un petit répertoire documents pour mettre un peu mon petit bordel, genre cahier des charges, fichier word, excel, etc…

Voilà, fin de cette première partie, j’espère vous avoir un peu éclairé 🙂

Pas de commentaire

Écrire un commentaire