Hemos eliminado accidentalmente la carpeta 'etiquetas' de nuestro repositorio de Subversion donde solo pretendíamos eliminar una etiqueta específica. ¿Cuál es la forma más sencilla de recuperar la carpeta 'etiquetas'?
Usamos TortoiseSVN como nuestro cliente y pensé que cuando vaya al navegador de repositorios y muestre el registro, habrá algo como "revertir los cambios de esta revisión" de manera similar a lo que puede ver en un diálogo similar en su copia de trabajo. Pero no existe tal comando allí ...
fuente
para los entusiastas de la línea de comandos:
primero busque el número de revisión donde ocurrió su eliminación:
digamos que encuentra que el directorio fue eliminado en la revisión 999 (por cierto: puede que le resulte más fácil encontrar el número de revisión con el navegador de repositorios svn)
copiar la carpeta de la revisión menos 1
voilà ¡has terminado!
en su caso, esto podría ser:
fuente
La mayoría de estas respuestas funcionarán hasta cierto punto, pero la respuesta correcta es la de Daniel. Haz una fusión inversa. De esa forma, mantienes el historial de versiones.
svn merge -r R1:R2
donde R1 es la revisión en la que se encuentra y R2 es la revisión que contiene el archivo / carpeta eliminados.
fuente
svn copy
.Deberá realizar una fusión inversa .
Para obtener detalles sobre cómo hacerlo (y prácticamente cualquier otra cosa que desee o necesite hacer con SVN), el libro oficial está disponible en línea .
fuente
Siguiendo la respuesta de raudi que funcionó para mí después de esta revisión.
Algunos clientes svn pueden necesitar el número de revisión especificado usando el parámetro -r revision en lugar de usar @ después de la carpeta de la siguiente manera:
fuente
-r <revision>
, funcionará. Sin embargo, si está intentando restaurar la carpeta directamente, deberá usar@<revision>
. De lo contrario, le dirá que no se encontró el archivo.Vaya a
Repository Browser
surepository
, haga clic derecho en la carpeta principal donde existía su carpeta eliminada . Ahora,Show Log
de la carpeta principal y seleccione la revisión anterior donde cometió la operación de eliminación. Tendrá una lista y haga clic derecho en la carpeta de la información de revisión y seleccioneUpdate to this Revision
.Estás listo
fuente