26May 2007
Mise en place d'un dépôt subversion local
02:09 - By Fabien Poulard
Subversion est gestionnaire de versions de fichiers extrêmement pratique pour gérer les modifications sur les fichiers sources d’un projet.
Nous allons décrire ci-dessous les méthodes permettant de mettre en place un dépôt local subversion afin d’utiliser subversion pour gérer les fichiers d’un projet.
Installation des utilitaires nécessaires
Pour la mise en place d’un dépôt local, seul le paquet {subversion} est nécessaire. Suivant le gestionnaire de paquet de votre distribution, lancez son processus d’installation. Pour Debian :
apt-get install subversion
Pour Ubuntu, utilisez l’application graphique d’ajout/suppression, sélectionnez le paquet subversion pour installation et appliquez les changements.
Préparation des fichiers pour lesquels le dépôt est créé
Subversion laisse libre la hiérarchie du dépôt, cependant, comme le préconise le livre officiel, il est préférable de placer à la racine du dépôt les trois dossiers :
- trunk (contenant la version courante)
- tags (répertoriant les différents tags)
- branches (répertoriant les différentes branches de développement)
Ne vous formalisez pas trop sur l’utilisation de ces dits répertoires, vous découvrirez leur utilité au fur et à mesure de votre utilisation. Pour le moment, concentrons-nous sur la création de cette hiérarchie :
shell$ mkdir /tmp/depot_a_importer shell$ cd /tmp/depot_a_importer shell$ mkdir trunk tags branches
Et plaçons le contenu que l’on a déjà dans le répertoire trunk. En effet, c’est ce répertoire qui est le plus utilisé, il contiendra la version courante du dépôt.
shell$ tar -xzvf mes_fichiers_sources.tar.gz -C /tmp/depot_a_importer/trunk
Si vos sources ne sont pas présentes dans une archive, copiez les directement dans le répertoire trunk.
Création du dépôt
La gestion des dépôts se fait par le biais de l’utilitaire svnadmin. Si par hasard ce dernier n’est pas installé en même temps que svn, regardez si votre distribution n’offre pas un paquet svn-utils ou quelque chose d’équivalent.
Placez-vous à l’endroit où vous souhaitez placer votre dépôt svn. Sachez toutefois que vous ne manipulerez jamais le dépôt, mais seulement le checkout de ce dernier qui sera placé à un autre emplacement. Placer un répertoire svn-depot à la racine du système de fichier est une solution acceptable. Le répertoire /var/db est également un emplacement possible.
Nous allons créer le dépôt dans un répertoire spécifique sous le répertoire /home, mais pas dans notre répertoire home :
shell$ mkdir -p /home/www-data/subversion shell$ cd /home/www-data/subversion shell$ svnadmin create mon_depot
Vous devriez maintenant voir apparaître un dossier nommé mon_depot dans ce répertoire avec en son sein tout un tas de choses :
shell$ ls mon_depot conf dav db format hooks locks README.txt
Voilà, le dépôt est créé, importons-y maintenant les fichiers que nous avons préparé dans le répertoire /tmp :
shell$ svn import /tmp/depot_a_importer file:///home/www-data/subversion/mon_depot/mon_projet -m "First Import"
Un dépôt peut gérer plusieurs projets, nous ajoutons ici au dépôt les fichiers que nous plaçons dans un nouveau projet que nous appelons mon_projet.
Vous pouvez lister les projets contenus dans un dépôt :
shell$ svn list file:///home/www-data/subversion/mon_depot/ mon_projet/
Récupérer les fichiers du dépôt
Maintenant que nos fichiers sont gérés en amont dans le dépôt, nous pouvons en récupérer une copie de travail. En effet, si vous regardez dans le répertoire du dépôt, vous vous appercevrez qu’il n’y a aucun fichier qui ressemble à ce que nous y avons importé.
Pour récupérer la dernière version des fichiers dans un répertoire :
shell$ svn checkout file:///home/www-data/subversion/mon_depot/mon_projet/trunk ~/fichiers-du-projet Révision 1 extraite.
Placez vous maintenant dans le répertoire ~/fichiers-du-projet, vous y retrouvez tout vos fichiers...
About the ICS format