¿Cómo agregar tags / troncales / twigs al repository SVN establecido?

Digamos que tiene un repository SVN establecido con cientos de revisiones y ha estado presente durante más de un año. El repository no tiene las tags estándar, troncales y twigs en el nivel superior. En cambio, va directamente al código.

¿Hay alguna manera de agregar tags , trunk y branches al repository en el nivel superior sin solo revisar todo el repository, alterar la estructura del directory y luego confirmar? ¿Hay alguna forma de agregarlo de forma recursiva para que si desea ver un file de hace un año que solía estar aquí:

 svn://svn.server.com/myfolder/myfile.txt 

en cambio, lo verías aquí

 svn://svn.server.com/trunk/myfolder/myfile.txt 

es posible? ¿O simplemente tengo que verificar todo, alterar la estructura del directory en la parte superior y comprometer todo?

Creo que la única forma de hacerlo de forma recursiva sería usar svnadmin dump, alterar el file de volcado y luego importarlo a un repository limpio.

No necesita verificar el repository para manipularlo.

 svn mv svn://svn.server.com/myfolder svn://svn.server.com/trunk svn mkdir svn://svn.server.com/tags svn://svn.server.com/branches 

Si las confirmaciones inmediatas son atemorizantes, también podría estar interesado en svn checkout --depth='immediates' que searchá solo los files y carpetas en el directory de destino, no el contenido de las carpetas. Compruebe la raíz con --depth=immediates , organice la estructura del directory como desee, confirme.

No hay una buena manera de lograr el cambio recursivo, salvo la reescritura de todo el historial del repository.