Pregunta

Estoy administrando un repositorio svn para un proyecto donde la fuente no se importó con un solo directorio de nivel superior. Como resultado, hay alrededor de 15 'proyectos' separados en lugar de uno. ¿Cómo puedo combinarlos en una carpeta mientras mantengo el historial de cambios?

* sugerencia: svn move no funciona en este caso.

[editar] whoops, engañado de Combinando múltiples repositorios SVN en uno

¿Fue útil?

Solución

Si no le importa retener todo el historial de uno de los repositorios, puede crear un nuevo directorio en el repositorio de un proyecto e importar el otro.

Si le interesa conservar el historial de ambos, puede usar 'svnadmin dump' para volcar un repositorio y 'svnadmin load' para cargarlo en el otro repositorio. Los números de revisión estarán desactivados, pero aún tendrá el historial.

Copiado desde aquí: http://subversion.tigris.org/faq.html # fusión múltiple

Otros consejos

Tal vez he estado trabajando demasiado con el martillo de control de versión distribuido y todo lo que veo en este punto son clavos distribuidos. Pero una vez más tengo que decir que este es probablemente un trabajo para DVCS.

Intentaría jugar con git-svn o algo así. Importe cada " proyecto " en su propio repositorio de git y ellos se extraen uno del otro. Resuelva cualquier conflicto y, una vez hecho todo, importe el historial nuevamente en Subversion.

Pero su equipo puede estar mejor simplemente usando el control distribuido después de que termine de fusionar todos los repos de todos modos ...

Puede crear un nuevo proyecto de nivel superior que use svn: externals para señalar todos los demás proyectos y colocarlos en los subdirectorios apropiados.

  • los desarrolladores solo tendrán que revisar su nuevo proyecto de nivel superior (svn seguirá automáticamente a svn: externos y atraerá a los demás)
  • se conservará el historial de la versión completa y los nuevos cambios se confirmarán automáticamente en el subproyecto relevante
  • le llevará unos 5 minutos implementarlo (cree el nuevo proyecto de nivel superior y ejecute svn propedit svn: externals top_dir ).
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top