Subversion

De wikilivois
Révision datée du 28 mai 2012 à 20:31 par Christophe (discussion | contributions) (1 version)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)
Aller à la navigationAller à la recherche
La version imprimable n’est plus prise en charge et peut comporter des erreurs de génération. Veuillez mettre à jour les signets de votre navigateur et utiliser à la place la fonction d’impression par défaut de celui-ci.


Construction.gif Cet article est en construction. N'hésitez pas à y apporter votre contribution.

http://subversion.tigris.org

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>

  1. Options for svnserve

SVNSERVE_OPTS="--root=/var/www/svn.livois.com"

  1. User and group as which to run svnserve
  2. SVNSERVE_USER="apache"
  3. 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

Tête de GNU 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.