2010-01-11 44 views
5

Siguiendo el consejo de this tutorial, cloné un repositorio svn que no tenía el diseño estándar.Cómo reiniciar un repositorio git-svn

git-svn clone -s http://example.com/my_subversion_repo local_dir 

El -s está ahí para significar que mi repositorio Subversion tiene un diseño estándar (tronco, ramas//, y las etiquetas /.) Si el depósito no tiene un diseño estándar, puede dejar eso apagado.

Al ser completamente nuevo en Git, no me daba cuenta de que simplemente dejando fuera la opción -s sin complementar la --trunk, --branches y --tags opciones me dejaban no sólo con un repositorio sin sucursales, pero también con el jefe completo del repositorio revisado (en lugar de solo la cabeza del tronco).

¿Hay alguna manera de "arreglar" mi repositorio git local para comportarme como si lo hubiera creado con conocimiento del diseño del repositorio svn? ¿Puedo usar git-svn init para reiniciar mi repositorio? Debido a la cantidad de tiempo involucrado, espero evitar tener que recolocar desde cero.

Respuesta

2

Esto es similar a SO question "Cloning a Non-Standard Svn Repository with Git-Svn", y no estoy seguro de que haya un proceso para arreglar el repositorio de Git después de esa copia inicial.

El clon profunda es la manera oficial:

git svn clone https://svn.myrepos.com/myproject web-self-serve 
    --trunk=trunk --branches=branches/*/* 

pero me gusta la encapsulación proporcionada por svn2git.

Desafortunadamente, ambas soluciones requieren una nueva clonación desde cero ...

Cuestiones relacionadas