gpocentek..blog

décembre 7, 2008

bzr vers svn avec tailor

Filed under: FOSS — Mots-clefs :, , — gpocentek @ 10:29

Je voulais passer de bzr à svn pour mon développement chez linutop (pour plusieurs raisons, vitesse, gestion de dépôts, pas de besoin de branches décentralisées, gestion des droits…), la contrainte étant de garder toutes les révisions venant des branches bzr, et d’insérer chacune des branches bzr dans un même dépôt svn. tailor fonctionne vraiment très bien pour ça. Ce n’est pas super rapide, mais comme la conversion n’est à faire qu’une fois, ce n’est pas un gros problème.

Après avoir créé le dépôt svn et avoir commité une architecture initiale (du genre depot/app1/trunk, depot/app2/trunk, etc), il suffit d’utiliser un petit script (à lancer dans /home/you/tailor pour cet exemple), qui récupère chaque révision bzr pour la commiter dans le dépôt svn:

#!/bin/sh
 
ORIG=/path/to/bzr/
DIRS="app1 app2 app3 app4"
 
for D in $DIRS; do
  # clean the work dir otherwise bzr will not be happy
  rm -rf work
  mkdir work
 
  # set a tailor conf file for this conversion
  cat > conf <<EOF
[DEFAULT]
verbose = True
 
[project]
target = svn:target
start-revision = INITIAL
root-directory = /home/you/tailor/work
state-file = tailor.state
source = bzr:source
subdir =
 
[bzr:source]
repository = $ORIG$D/mainline
 
[svn:target]
repository = file:///path/to/svn/repo
module = /$D/trunk
EOF
 
  tailor --configfile=conf
done

Après un petit moment tout est inclus dans le dépôt svn !

Pas de commentaire »

Pas encore de commentaire.

Flux RSS des commentaires de cet article. TrackBack URL

Laisser un commentaire

Powered by WordPress