2013-06-11 7 views
1

J'ai examiné plusieurs questions et aucune ne semble correspondre à ce que j'essaie de faire. J'ai commencé le chemin de la décharge, filtre, charge mais cela n'a pas semblé juste. Le mouvement peut le faire mais il ne se sent pas bien depuis que je combine et les versions semblent être surécrites.Déplacement de plusieurs référentiels SVN en un

Ma structure actuelle ressemble:

/REPO 
    /Project_1 
      /trunk 
      /branches 
      /tags 
    /Project_2 
      /trunk 
      /branches 
      /tags 
    /Project_3 
     /trunk 
     /branches 
     /tags 

Je voudrais les déplacer dans une structure qui ressemble à

/REPO_NEW 
    /trunk 
      /Project_1 
      /Project_2 
      /Project_3 
    /branches 
      /Project_1 
      /Project_2 
      /Project_3 
    /tags 
      /Project_1 
      /Project_2 
      /Project_3 

Je voudrais préserver l'histoire une fois la restructuration terminée. L'approche de la force brute consiste à tout déconnecter et à refaire la structure de mon répertoire/fichier, puis à m'engager dans le nouveau référentiel si mon repli absolu en tant qu'historique est perdu.

+0

Je crois [Combinaison de plusieurs référentiels SVN en un] (http://stackoverflow.com/questions/17047720/moving-multiple-svn-repositories-into-one) fait l'inverse de ce que j'essaie de faire. Je peux me tromper mais les descriptions de disposition semblent être l'inverse. – jschnell

Répondre

1

dump/filter/load est exactement ce que vous voulez, si vous voulez garder votre historique. Il y a beaucoup de docs sur faire un dump/load pour fusionner 2 dépôts ensemble.

Vous devrez répéter le vidage/filtre/charger plusieurs fois pour déplacer chaque projet ou vous devrez le faire avec une grande commande de filtre. Je pense que je le ferais pour chaque projet pour le garder simple.

+0

J'ai donc les dumps filtrés - un pour chaque projet. Je suppose que j'ai besoin de modifier le noeud-chemin, etc .. puis charger dans REPO_NEW. Pouvez-vous me montrer les documents détaillés? J'en ai trouvé à [link] (http://svnbook.red-bean.com/nightly/en/svn.reposadmin.maint.html#svn.reposadmin.maint.migrate) mais l'édition de node-path n'était pas bien documenté. Y a-t-il de meilleurs docs partout? – jschnell

+0

vous avez juste besoin de comprendre le filtre change un chemin à l'autre, vider le projet1/tronc et le filtrer à trunk/project1. Répéter. Pratiquez sur une copie de votre repo d'abord pour comprendre, ce n'est pas quelque chose que beaucoup de gens font, donc l'outil n'est pas joli. – gbjbaanb

+0

Y at-il quelque chose en ligne pour montrer comment faire cela? Je n'arrive pas à l'intégrer dans la bonne structure. J'ai un fichier de vidage de project1. Comment le filtrez-vous en trunk/project1, branches/project1, tags/project1? Est-ce une commande de filtre ou une modification de node-path? Je pense vraiment à juste déconnecter, et check-in à nouveau repo avec la structure correcte et oublier l'histoire. – jschnell

Questions connexes