revertir el archivo y volver a cometerlo no muestra cambios

1

Tengo un archivo que actualmente está en la revisión X. Me gustaría revertirlo a la revisión X-1 y confirmarlo como X-1. Sin embargo, cuando obtengo la vista previa de confirmación para X-1, SVN (en este caso estoy usando Tortoise) dice que no hay cambios. ¿Cómo puede ser esto? ¿Y cómo cometo el archivo revertido?

David Grinberg
fuente

Respuestas:

0

No estoy seguro de si estoy leyendo demasiado en la redacción de su pregunta, pero es posible que no entienda bien cómo funciona SVN y qué es el comando "revertir".

Primero, el comando "revertir" es solo para deshacerse de los cambios que aún no ha realizado. Deshace cualquier cambio que vea con svn status o la "verificación de modificaciones" de TortoiseSVN. Nada mas.

En segundo lugar, no es posible realizar una revisión inferior a la revisión actual. En SVN, los archivos no tienen revisiones. Las revisiones tienen archivos. Y los números de revisión siempre suben, nunca bajan. Piense en una revisión en SVN como una instantánea en el tiempo de TODO en el repositorio. Técnicamente, debe decir "archivo foo tal como existía en la revisión 123", en lugar de "revisión 123 del archivo foo". Este último no es estrictamente correcto y puede descomponerse en algunas situaciones.

Finalmente, lo que estás TRATANDO de hacer, parece, es eliminar algunos cambios en un archivo. Para ello, cree una NUEVA revisión del archivo, utilizando el concepto de "fusión inversa". Desde la línea de comandos, realiza una fusión del archivo, especificando una revisión negativa o un rango de revisión hacia atrás, para deshacer los cambios en esas revisiones. Luego, puede comprometerse a obtener una nueva revisión que contenga su archivo con los cambios invertidos. TortoiseSVN lo hace fácil: simplemente abra el cuadro de diálogo "mostrar registro", haga clic derecho en la revisión que desea revertir y seleccione "revertir cambios de esta revisión". Entonces tendrás que comprometerte como antes.

De cualquier manera, realice este paso de "fusión inversa" desde una copia de trabajo que apunta a HEAD. Tu nueva revisión siempre irá después de HEAD, ya que así es como funciona SVN.

Ben
fuente