2011-04-07 19 views
5

Tengo que svn repositorios, digamos A y B. Quiero agregar algunos de los directorios de B en A junto con history.Is posible hacer eso. Para hacer más claro, siguiente es el escenario.Fusionando una parte del repositorio SVN a otro repositorio con historial

repo A        repo B 
     \branches       \branches 
      \sub-branch1      \sub-branch B1 
       \sub-branch2      \sub-branch B2 
     \trunk        \trunk 

Lo que me gustaría hacer es agregar sub-branch2 en las ramas de repo A. ¿Cómo podría hacerlo?

gracias de antemano

Respuesta

6

Consigue el volcado de la sub-BRANCH2 de repoB:

svnadmin dump /location/of/repoB | svndumpfilter include subbranch2 > my.dump 

fusionar el volcado en ramas de REPOA:

svnadmin load /location/of/repoA --parent-dir branches < my.dump 
+0

Lo probé, pero tengo desastroso, es posible que haya cometido algún error. Mi historial anterior se ha perdido. ¿El directorio principal especifica solo el directorio de nivel superior? Mi verdadera arquitectura del repositorio es 1 nivel más profundo de lo que mencioné allí en una pregunta. ¿Me puede sugerir si puedo revertir el proceso? – thetna

+0

¿A qué te refieres con revertir? Simplemente elimine el directorio que no necesita de repoA, no se ha realizado ningún cambio en repoB. El proceso de carga debe haber mostrado algunos mensajes que lo ayudarán a comprender qué fue lo que salió mal. – vpk

+0

** revisión vacía para el relleno. ** es el error que obtuve y el directorio tampoco se agrega en el directorio especificado. ¿Puede decirme cuál es el motivo? – thetna

1

Sí, esto es posible. Debe usar svnadmin dump y svnadmin load.
Para obtener más información, mira aquí: http://blogs.nuxeo.com/dev/2006/04/dump-load-svn-repositories-using-svnadmin-svndumpfilter.html

+0

leí el artículo. Es muy útil. Pero tengo una duda, cómo dirigir la ubicación del archivo volcado. Creo que ** svnadmin load

thetna

+0

lea mi respuesta. puedes especificar un directorio padre en el comando svnadmin load. – vpk

+1

Utilice la opción --parent-dir para cargar el comando. Ver la respuesta de jjossarin para un ejemplo. –

Cuestiones relacionadas