Installer SVN sur CENTOS

août 4, 2015 7:49 Publié par Laissez vos commentaires

Bonjour à tous,

Dans ce tutoriel, nous allons apprendre à installer Apache Subversion (SVN) sur une distribution Linux Centos. En prérequis, il est nécessaire d’avoir installé apache sur sur le serveur.

Centos 6 – Installer et configurer Apache

Centos 7 – Installer un serveur web

CentOS – Désactiver SELinux

Installation du package SVN :

yum install mod_dav_svn subversion

Création du dossier des dépôts SVN :

mkdir -p /var/svn
chown -R apache:ftpusers svn/
systemctl restart httpd.service
svnserve -d -r /var/svn

Création du projet

exemple pour un projet nommé monprojet :

svnadmin create /var/svn/monprojet

Nous allons ensuite créer les sous dossiers de l’arborescence SVN 1:
-* trunk : répertoire de travail principal
-* branches : versions de développement en parallèle du trunk
-* tags : snapshot des versions (historique)

cd /tmp
mkdir -p master/trunk,branches,tags

svn import /tmp/master/ file:///var/svn/monprojet -m "Import monprojet"
Ajout          /tmp/monprojet/trunk
Ajout          /tmp/monprojet/branches
Ajout          /tmp/monprojet/tags

Révision 1 propagée.

Import des sources dans le trunk (celles-ci se trouvent dans notre cas dans le dossier /var/www/monprojet). Si vous avez une base de donnée, vous pouvez créer un dossier à l’intérieur de votre projet contenant le dump sql de votre base.

mysqldump -u root -p --database mabase > dump/dump.sql

Import du projet dans SVN :

svn import /var/www/monprojet/ file:///var/svn/monprojet/trunk -m "Import des sources"

Vérifiez les ensuite les droits puis redémarrez apache.

nano /etc/httpd/conf.d/subversion.conf


DAV svn
SVNParentPath /var/svn
SVNListParentPath On
AuthType Basic
AuthName "Subversion repositories"
AuthUserFile /etc/svn-auth-users
Require valid-user


Création d’un nouvel utilisateur toto:

htpasswd -cm /etc/svn-auth-users toto

Pour les prochains utilisateurs, il ne sera pas nécessaire de créer le dossier :

htpasswd -m /etc/svn-auth-users user2

Création des droits :
Création du fichier svn-access-users

nano /etc/svn-access-users

[groups]
team1= toto

[/]
@team1 = rw

Configurer le virtual host (optionnel) :

Fichier /etc/httpd/conf/httpd.conf

 
     DocumentRoot /var/svn/monprojet
     ServerName www.mondomaine.com
     ServerAlias mondomaine.com

     
         DAV svn
         SVNParentPath /var/svn
     
 

En tapant l’url www.mondomaine.com vous allez ainsi tomber sur le repository du projet « monprojet ».

Activation du SSL

Nous souhaitons à présent sécuriser les échanges entre notre serveur SVN et les clients (accès en https). Nous allons donc modifier notre virtual host en conséquence :


     DocumentRoot /var/svn/monprojet
     ServerName www.mondomaine.com
     ServerAlias mondomaine.com
    SSLEngine on
    SSLCertificateKeyFile /etc/pki/tls/private/testssl.key
    SSLCertificateFile /etc/pki/tls/certs/testssl.crt
     
         DAV svn
         SVNPath /var/svn/monprojet
         AuthType Basic
         AuthName "Subversion repositories"
         AuthUserFile /etc/svn-auth-users
         Require valid-user
     
 

Si vos certificats ssl sont correctement installés, vous pouvez accéder à votre repository en https.

A bientôt pour de nouveaux tutoriels!

Pour aller plus loin :

Eclipse – installer le plugin SVN Subversive

SVN – Les commandes indispensables

Notes:

  1. ne pas créer les dossiers directement avec les commandes systèmes mais les importer avec la commande svn import.

Classés dans :

Cet article a été écrit par admin

Laisser un commentaire