Le dossier qui va recevoir les dépôts SVN :
Germain:Datas germain$ svnadmin create /Volumes/Datas/svn
Voyons voir ce qu’il y a dedans :
Germain:Datas germain$ cd /Volumes/Datas/svn Germain:svn germain$ ls README.txt conf db format hooks locks
Ça semble normal.
A présent on veut configurer la machine pour recevoir plusieurs repos :
Germain:svn germain$ mkdir repositories Germain:svn germain$ cd repositories/ Germain:repositories germain$ svnadmin create test1 Germain:repositories germain$ svnadmin create test2
On va killer svnserve et faire en sorte qu’il prenne notre dossier {repositories} en root :
Germain:repositories germain$ killall svnserve Germain:repositories germain$ svnserve -d -r /Volumes/Datas/svn/repositories/
On voit que ça marche, et je fais volontairement une capture d’écran de Dreamweaver parce que j’encule tous ceux qui soutiennent mordicus que cet IDE est pourri. Moi j’aime bien certaines de ses qualités et quand je suis confronté à certains de ses inconvénients je fais comme tous les gens supérieurs : j’ouvre Netbeans.
Et une fois de plus, ceux qui trouvent que j’ai des goûts de merde en matière d’IDE, je vous encule.
Bon a présent vous remarquerez un truc si vous fermez votre session (redémarrage de la machine par exemple) :
Oui, svnserve n’a pas redémarré correctement.
Sous OS X pour gérer ça on passe par des fichiers plist.
Un bon éditeur de fichiers plist : Lingon
Ouvrez-le et faites un New User Deamon :
* Andrew Bednarz surggère de l’appeler {org.subversion.svnserve} (champ Name
* Dans What on va mettre la racine des repos : {/usr/bin/svnserve –inetd –root=/Volumes/Datas/svn/}
* Enfin passez en mode Expert et collez ça sous la balise ouvrante de la section {} :
<key>Sockets</key> <dict> <key>Listeners</key> <dict> <key>SockFamily</key> <string>IPv4</string> <key>SockServiceName</key> <string>svn</string> <key>SockType</key> <string>stream</string> </dict> </dict> <key>inetdCompatibility</key> <dict> <key>Wait</key> <false/> </dict> <key>Umask</key> <integer>2</integer> <key>UserName</key> <string>svn</string> <key>GroupName</key> <string>staff</string>
Et maintenant au logout c’est bon.
Cool.
Voir en ligne : Source