mercredi 2 novembre 2011

Configurer un serveur Subversion sur Mac OS X 10.7 (Lion)

Les développeurs ayant leur configuration Subversion sous 10.6 (Snow Leopard) et qui ont effectué la mise à jour vers 10.7 (Lion), ont du remarquer que le serveur subversion ne fonctionnait plus.
La raison est que les Virtual Hosts dans Apache sous Lion ne se configurent plus dans httpd.conf, il faut inclure (dans le sens Include) un fichier de configuration.

Donc si on reprend le modèle de configuration de Subversion sur 10.6 (Snow Leopard) et on applique la méthode 10.7. On obtient ceci:


  • Ouvrir le terminal. Créer un dépôt nommé "repo":
$ sudo mkdir /usr/local/svn
$ sudo svnadmin create --fs-type fsfs /usr/local/svn/repo
$ cd /etc/apache2/
$ sudo cp httpd.conf httpd.conf.bak
$ sudo nano httpd.conf

  • Créer le fichier de configuration httpd.conf
$ cd /etc/apache2/extra/
$ nano httpd-subversion.conf

  • Ensuite ajouter le texte suivant après les "virtual host": 
LoadModule dav_svn_module libexec/apache2/mod_dav_svn.so
LoadModule authz_svn_module libexec/apache2/mod_authz_svn.so

<Location /repo>
   DAV svn
   SVNPath /usr/local/svn/repo
   AuthType Basic   AuthName "Subversion"   AuthUserFile /usr/local/svn/svn_passwd   Require valid-user
</Location>


  • Editer httpd.conf et ajouter la ligne suivante: 
Include /private/etc/apache2/extra/httpd-subversion.conf
  • Ensuite ajouter un mot de passe pour le répertoire: 
$ cd /usr/local/svn
$ sudo htpasswd -c svn_passwd fred

  • Modifier les droits d'accès pour le serveur Apache: 
$ cd /usr/local
$ sudo chown –R www:www /usr/local/svn
$ sudo chmod 600 /usr/local/svn/svn_passwd
$ ls -la /usr/local/svn/svn_passwd

  • Activer la fonction partage Web de Préférence Système, cela démarre Apache.
On doit pouvoir y accéder par http://localhost/repo

Référence en anglais (Subversion server on mac os x lion with apache).