X-Space

Aller au contenu | Aller au menu | Aller à la recherche

Comment migrer un dépot subversion dans un autre dépot existant ?

Jusqu'à récemment à chaque fois que j'avais besoin de versionner un projet, je créais un nouveau dépôt subversion ce qui revenait à faire :

  • Via SSH : svnadmin create /some/path/
  • Création d'un VirtualHost Apache (avec le htaccess qui va bien)
  • Installation d'un WebSVN

Tout ca pour au final me retrouver avec une dizaine de dépôts (et autant d'URL) ayant chacun moins de 100 commits. J'ai donc décidé de fusionner tous ca sous une URL unique avec certificat TLS par dessus.

Deux hics :

  • Comment importer mes dépôts dans le dépôt existant ?
  • Comment définir une convention de nommage des dépôts ?

Pour la deuxième question ce fut assez simple : je me suis basé sur l'arborescence DNS inversée (ca tombe bien la majorité de mes projets ont une URL) :

Exemple : Si ce blog était versionné il le serait sous la forme net/x-space/www/ avec dans ce dossier les traditionnels trunk, branches et tags.

Pour la première question : et bien les développeurs de subversion ont pensé à tout.

svnadmin dump /path/to/the/old/repository/ > net.x-space.www.dump

Puis

svnadmin load --parent-dir net/x-space/www/ /path/to/the/new/repository/ < net.x-space.www.dump

Pour en savoir plus :