Pregunta

Me preguntaba si hago clic derecho en un archivo en el navegador de repositorios SVN, ¿se elimina permanentemente? ¿Se puede recuperar?

¿Fue útil?

Solución

Esta pregunta / respuesta de SVN FAQ puede interesarle:

  

¿Cómo elimino completamente un archivo del historial del repositorio?

     

Hay casos especiales donde usted   podría querer destruir toda evidencia de   un archivo o commit (Quizás alguien   accidentalmente cometió un confidencial   documento.) Esto no es tan fácil, porque   Subversion está deliberadamente diseñado para   Nunca pierdas información. Las revisiones son   árboles inmutables que se basan en uno   otro. Eliminar una revisión de   la historia causaría un efecto dominó,   creando caos en todos los subsiguientes   revisiones y posiblemente invalidantes   todas las copias de trabajo.

     

El proyecto tiene planes, sin embargo, para   algún día implemente un comando svnadmin obliterate que   cumplir la tarea de forma permanente   borrando información. (Ver el problema 516.)

     

Mientras tanto, su único recurso es   a svnadmin dump su repositorio, luego   canalizar el archivo de volcado    svndumpfilter (excluyendo la ruta incorrecta)   en un comando svnadmin load .

Si es tan difícil, hay pocas posibilidades de que se pueda hacer fácilmente desde Tortoise SVN ...
(Y no es el objetivo de Source Control ...)

Otros consejos

Descubrirá que solo puede eliminar del navegador Repo cuando esté viendo la revisión HEAD. Esto es idéntico a eliminar un archivo de su copia de trabajo y luego registrar la eliminación. En ambos casos, podrá restaurar desde la revisión anterior.

Eliminar un archivo a través del menú contextual del navegador de repositorios básicamente crea una nueva revisión global donde solo se eliminó ese archivo, por lo que aparece en el registro como tal: siempre puede volver a esa revisión para recuperar el archivo, o usted simplemente puede extraerlo directamente del repositorio en su copia de trabajo.

No ... Eliminar un archivo (incluso utilizando el navegador de repositorios) solo afecta a las copias de trabajo. Sería un sistema de control de revisión bastante malo si no pudiera recuperar un archivo del pasado. En realidad, es bastante difícil modificar archivos en una revisión comprometida, incluso si tiene acceso de root al servidor.

¿No hace clic con el botón derecho solo en algún tipo de menú? Y con SVN es que siempre puedes revertir de todos modos.

Eliminé un directorio de nivel superior del navegador Repo por accidente y la única forma de recuperarlo fue lo siguiente:

  • Exportar la carpeta de nivel superior de un historial de versiones anterior
  • Cree una nueva carpeta en el repositorio para reemplazar la eliminada.
  • Agregue los archivos exportados nuevamente al nuevo directorio (mismo nombre que el anterior)
  • Actualice la copia de trabajo, eliminará y luego volverá a agregar los mismos archivos.

Es molesto pero al menos el trabajo y el repositorio volverán a estar sincronizados. El " Revertir cambios de esta revisión " no funcionó para deshacer las eliminaciones de repositorios, solo se revierte en el directorio de trabajo, no en "Deshacer" la eliminación al repositorio.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top