Patrice Ferlet
Patrice Ferlet
Créateur de ce blog.
Publié le nov. 13, 2009 Temps de lecture: 2 min

Me suivre sur Mastodon

Subversion local pour vos travaux

Travailler sur des développements, que ce soit professionnellement ou en tant qu’amateur, vous amène souvent à utiliser subversion. En effet, le travail en groupe est plus facile à maintenir, vous empêchant d’écraser le travail des autres. C’est ce que l’on appelle la “concurrence de version”. Mais il arrive de travailler seul sur un projet. Cela ne doit pas vous empêcher d’utiliser un serveur de concurrence de version. En effet, il peut être très avantageux de pouvoir suivre ses propres développements ne serait-ce que pour “loguer” vos modidifications, revenir en arrière ou tenter plusieurs “branches” de développement.

Or Subversion est un outil généralement utilisé sur le réseau, je dirait même plus: sur internet. Mais il est tout à fait possible de travailler localement sur SVN. Voici comment s’y prendre.

En premier lieu, installez les outils subversion:

su -lc "yum install subversion"

Reste maintenant à créer un dépot. Par exemple dans votre répertoire utilisateur, on va créé un répertoire qui stoquera vos dépôts:

mkdir -p ~/subversion

Une fois ceci fait, vous pouvez créer un dépôt pour un projet. Par exemple le “project1”

svnadmin create ~/subversion/project1

Reste maintenant à récupéré le dépot localement afin de pouvoir créer et mettre à jour des données. En temps normal, subversion demande un adresse de dépot de la forme “http”. Sauf que nous ne sommes pas sur le net, mais sur un dépôt local. L’idée est de remplacer “http” par la forme d’url de type “fichier”, c’est à dire “file://

Voyez plutôt:

mkdir -p ~/Projects
cd ~/Projects
svn co file:///home/VOTRE_USER/subversion/project1 project1
cd project1
echo "test de fichier" > test1.txt
svn add text1.txt
svn ci -m "ajoute un fichier dans le dépot, pour tester"

Et voilà !

Bon il y a un dernier point, en général on préfère utiliser “trunk”, “tags” et “branches” pour séparer nos tags, nos branches et le tronc. Personnellement je fais ainsi (en partant de la base):

svnadmin create ~/subversion/project2
svn mkdir file:///home/MON_USER/subversion/project2/trunk -m "ajout du tronc"
svn mkdir file:///home/MON_USER/subversion/project2/tags -m "ajout des tags"
svn mkdir file:///home/MON_USER/subversion/project2/branches -m "ajout des branches"

mkdir -p ~/Projects
cd ~/Projects
svn co file:///home/MON_USER/subversion/project2/trunk project2

Comme ça je travaille dans le tronc…

Le but de la manoeuvre étant de travailler sans peur de perdre le différentiel durant un projet où je suis seul développeur. Sait-on jamais, un jour je risque de devoir revenir en arrière ou peut-être rendre public mes travaux. Dans ce cas, je pourrais léguer le dépôt avec les logs à une équipe, ou simplement déporter mon dépôt sur un serveur.

Voilà, c’est aussi simple que ça.

comments powered by Disqus