Outils pour utilisateurs

Outils du site


environnement_prog_svn

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
Dernière révisionLes deux révisions suivantes
environnement_prog_svn [2007/05/23 10:18] thierryenvironnement_prog_svn [2008/12/10 13:17] thierry
Ligne 3: Ligne 3:
 Un concurrent de CVS Un concurrent de CVS
  
 +Lien:
 +  http://artis.imag.fr/~Xavier.Decoret/resources/svn/index.html
 Liens: Liens:
  
Ligne 45: Ligne 47:
   # adduser svn --system --disabled-login --no-create-home --group   # adduser svn --system --disabled-login --no-create-home --group
 On l'utilisera par la suite, car il sera le seul autorisé a manipuler directement les repository On l'utilisera par la suite, car il sera le seul autorisé a manipuler directement les repository
 +
  
 ==== Installer le daemon "svnserve" ==== ==== Installer le daemon "svnserve" ====
 +(C'est beaucoup plus cool avec ''inetd''... voir plus loin)\\
 +
 D'abord preparer un repertoire pour recevoir le PID (generer par le user ''svn''). D'abord preparer un repertoire pour recevoir le PID (generer par le user ''svn'').
   # mkdir /var/run/svn   # mkdir /var/run/svn
Ligne 282: Ligne 287:
  
    $ svn switch --relocate FROM_URL TO_URL    $ svn switch --relocate FROM_URL TO_URL
 +
  
 ===== Installer en serveur avec SSH ===== ===== Installer en serveur avec SSH =====
 +
 +==== droits ====
 +Il faut préalablement s'assurer que l'utilisateur aura les droits de lire et/ou modifier le repository. Pour repartir des exemples ci-dessus:
 +  # chmod -R g+ws /svn/dev/myproject
 +Et
 +  # adduser thierry svn
  
 ==== Cas simple ==== ==== Cas simple ====
Ligne 310: Ligne 322:
  
 Et c'est relativement long, et ca demande 3 fois le mot de passe... Et c'est relativement long, et ca demande 3 fois le mot de passe...
 +
 +
 +
 +
 +===== svnserve et inetd =====
 +C'est finalement mieux et plus simple qu'un daemon.\\
 +Editer le fichier ''/etc/inetd.conf'' et inserer:
 +  svn     stream  tcp     nowait  svn     /usr/bin/svnserve   svnserve -i -r /svn
 +Puis forcer le rechargement du fichier de conf en faisant:
 +  # ps aux | grep inetd
 +  root      3209  0.0  0.0   1748   576 ?        Ss   May21   0:00 /usr/sbin/inetd
 +Et enfin:
 +  # kill -HUP 3209
 +(ou ''invoke-rc.d openbsd-inetd reload'')
 +
 +:!: Si vous ne trouvez pas "inetd", c'est peut-être simplement parce que ce daemon ne s'est pas donné la peine de resté chargé (car la conf ne le necessitait pas); donc:
 +  # /etc/init.d/openbsd-inetd restart
 +  Restarting internet superserver: inetd
 +
 +Et voila.
  
 ===== Sauver et restaurer ===== ===== Sauver et restaurer =====
Ligne 326: Ligne 358:
  
    $ cat app-dump.svn | svnadmin load /svn/dev/new-app    $ cat app-dump.svn | svnadmin load /svn/dev/new-app
 +
 +
 +===== Deplacer =====
 +Aprés un crash, la bouillie du répertoire **''/svn''**  a été deporté sur un serveur distant...
 +
 +Mais voila que mes trunks, ne sont plus a jour et un **''svn checkout''** est exclus. Et puis de toutes les maniéres:
 +  $ svn update
 +  svn: Impossible d'ouvrir une session ra_local pour l'URL
 +  svn: Le dépôt 'file:///svn/dev/labo/sudo2/trunk' n'a pu être ouvert
 +Tu m'etonnes: le repository est par là maintenant:
 +  svn://debcave/dev/labo/sudo2/trunk
 +Alors je fais:\\
 +  (sous réserve:)
 +  $ svn cleanup
 +et enfin:
 +  $ svn switch --relocate file:///svn/dev/labo/sudo2/trunk svn://debcave/dev/labo/sudo2/trunk
 +Et voila !
  
environnement_prog_svn.txt · Dernière modification : 2008/12/24 09:46 de thierry