Tengo una carpeta "docs" en un repositorio de Subversion llamado "project". Llegué a la conclusión de que realmente debería mantenerse en un repositorio de Subversion separado llamado "project_docs".
Me gustaría mover la carpeta "docs" ( y todas sus revisiones ) al repositorio "project_docs". ¿Hay alguna forma de hacer esto?
svn
repository
directory
move
leftend
fuente
fuente
"C:\Program Files (x86)\VisualSVN Server\bin\svnadmin" dump c:\Repositories\MyRepository > c:\Temp\MyReository.dump
svndumpfilter tiene una falla grave: si un archivo o ruta se copió de una ruta que está filtrando a una que está filtrando, svndumpfilter no podrá completar el historial y el trabajo fallará.
Puede usar svndumpfilter2 si experimenta este problema.
fuente
Esto se discute en la documentación de SVN. Consulte la sección Mantenimiento del repositorio en
svndumpfilter
... Describe específicamente cómo volcar proyectos fuera de un repositorio central y moverlos a repositorios nuevos e independientes.fuente
No creo que pueda hacerlo de forma remota (es decir, sin una copia local). Pero esto debería funcionar:
svn export
la carpeta del servidor original, luegosvn add
a su nuevo repositorio.Me gusta:
Editar: D'oh, esto deja caer la historia. Usar
svnadmin
como lo describe Samuel .fuente
Para futura referencia:
La documentación de SVN informa claramente:
Si planea editar manualmente el archivo de volcado para eliminar un directorio de nivel superior, asegúrese de que su editor no esté configurado para convertir automáticamente los caracteres de fin de línea al formato nativo (por ejemplo, \ r \ n a \ n), ya que el contenido no estará de acuerdo con los metadatos. Esto hará que el archivo de volcado sea inútil.
¡Use sed o Vim para sustituir el directorio de nivel superior, pero este nombre de directorio también estaba contenido dentro de un archivo de proyecto ! Esto provoca un error de suma de comprobación de carga SVN.
Entonces, cuando realice esta operación, no haga sustituciones de cadenas con sed de solo el nombre de la ruta.
Sustituya "Node-path: old_path" con "Node-path: new_path". Consulte el capítulo 5 del libro SVN “administración del repositorio” para obtener más detalles.
fuente
Traté de usar la respuesta aceptada, pero tenía un gran repositorio y quería exportar un directorio pequeño, y no podía permitirme volcar todo el repositorio.
Por lo tanto, solo exporté las revisiones donde cambió mi directorio (Esto puede no funcionar si el directorio que desea exportar tiene referencias a otros lugares en su repositorio).
Debe reemplazar su URL de repositorio (
URL_to_docs
), ubicación en el servidor (/svn/old_repo
) y ruta a los documentos en el repositorio (path/to/docs
)Puede editar fácilmente su
docs_only.dump
si desea cambiar la ubicación de su directorio de documentos en su nuevo repositorio.fuente