Subversion
http://svnbook.red-bean.com/nightly/en/index.html
http://gentoo-wiki.com/Subversion
Linuxmag 85
Installation
Package Gentoo: subversion
Editer /etc/conf.d/svnserve <licode file=/etc/conf.d/svnserve>
- Options for svnserve
SVNSERVE_OPTS="--root=/var/www/svn.livois.com"
- User and group as which to run svnserve
- SVNSERVE_USER="apache"
- SVNSERVE_GROUP="apache"
</licode>
#/etc/init.d/svnserve start
Noter que subversion utilise le port tcp 3690
Configuration
Créer un repository
#mkdir -p /var/www/svn.livois.com/monys
#svnadmin create /var/www/svn.livois.com/monys
Here is a brief description of all of the items you see in your new repository directory:
- conf - A directory containing repository configuration files.
- dav - A directory provided to Apache and mod_dav_svn for their private housekeeping data.
- db - Where all of your versioned data resides. This directory is either a Berkeley DB environment (full of DB tables and other things), or is an FSFS environment containing revision files.
- format - A file whose contents are a single integer value that dictates the version number of the repository layout.
- hooks - A directory full of hook script templates (and hook scripts themselves, once you've installed some).
- locks - A directory for Subversion's repository locking data, used for tracking accessors to the repository.
- README.txt - A file which merely informs its readers that they are looking at a Subversion repository.
#svn import /usr/local/monys file:///usr/local/svn/monys
#svn list file:///var/www/svn.livois.com/monys
Configurer le mode webdav
http://gentoo-wiki.com/HOWTO_Apache2_with_subversion_SVN_and_DAV
http://svnbook.red-bean.com/nightly/en/svn.serverconfig.httpd.html
<licode file=/etc/conf.d/apache> APACHE2_OPTS="$APACHE2_OPTS -D DAV -D DAV_FS -D SVN" </licode>
Commenter les lignes de 47_mod_dav_svn.conf <licode file=/etc/apache2/modules.d/47_mod_dav_svn.conf>
#<Location /svn> #DAV svn #SVNPath /var/svn/repos #AuthType Basic #AuthName "Subversion repository" #AuthUserFile /var/svn/conf/svnusers #Require valid-user #</Location>
</licode>
<licode file=/etc/apache2/vhosts.d/svn.livois.com.conf> <IfModule mod_dav_svn.c> <Location /svn>
DAV svn SVNParentPath /var/www/svn.livois.com/ #SVNPath /var/www/svn.livois.com/monys
</Location> </IfModule> </licode>
Avec l'option SVNParentPath /var/www/svn.livois.com/, vérifier le fonctionnement avec la commande
#svn list http://svn.livois.com/svn/monys
Avec l'option SVNPath, la vérification se fait par la commande:
#svn list http://svn.livois.com/svn/
Utilisation
Créer sa base svn locale
http://svnbook.red-bean.com/nightly/en/svn.tour.html
#cd localsvndir
#svn checkout file:///var/www/svn.livois.com/monys/
ou si le répertoire est accessible via webdav :
#svn checkout http://svn.livois.com/monys
ou si les firewalls autorisent l'utiliation du protocole svn:
#svn checkout svn://svn.livois.com/monys
Gérer les droits
Les fichiers de configuration se trouvent dans /var/www/svn.livois.com/conf: Trois fichiers servent à la configuration des droits :
- authz
- passwd
- svnserve.conf
Le cycle de travail
http://svnbook.red-bean.com/nightly/en/svn.tour.cycle.html
Mettre à jour sa copie de travail
chris@home:~/svn/monys$ svn update
U mail/dev/TODO Actualisé à la révision 2.
Faire des changements
#svn add foo
#svn delete foo
#svn move foo
#svn copy foo
Vérifier les changements
#svn status
#svn diff
#svn revert
Envoyer ses changements (commit)
#svn commit
Gestion des conflits
http://svnbook.red-bean.com/nightly/en/svn.tour.cycle.html
Réserver un fichier (lock)
http://svnbook.red-bean.com/nightly/en/svn.advanced.locking.html
Clients pour Windows
RapidSVN - http://www.rapidsvn.org/
TortoiseSVN - http://tortoisesvn.net/
Administration
Sauvegarde
La sauvegarde :
#svnadmin dump mon_referentiel > mon_fichier_de_sauvegarde
La restauration:
#svnadmin load mon_nouveau_referentiel < mon_fichier_de_sauvegarde
Copyright
© 2007 Christophe de Livois
Vous avez l'autorisation de copier, distribuer et/ou modifier ce document suivant les termes de la GNU Free Documentation License, Version 1.2 ou n'importe quelle version ultérieure publiée par la Free Software Foundation; sans section invariante, sans page de garde, sans entête et sans page finale. Pour plus d'informations consulter le site de l'APRIL. |