2010-08-27 21 views
7

Situation: Tengo un repositorio SVN con digamos 100 revisiones, rev. 100 es el más reciente. He hecho algunos cambios en rev. 90 que necesitan ser revertidos ahora. Los cambios en rev. 90 son independientes, por lo que no afectan las siguientes revisiones.SVN: Revertir cambios de una revisión aleatoria, pero preservar los cambios de todos los siguientes

Problem: Me gustaría revertir solo los cambios en la versión rev. 90, pero aún quiero tener todos los cambios de todas las siguientes revisiones en mi revisión de cabeza.

Question:¿Hay alguna función en SVN para revertir solo los cambios de una revisión aleatoria?

+0

Muy probablemente un duplicado de: http://stackoverflow.com/questions/13330011/how-to-revert-an-svn-commit –

Respuesta

12

Tiene que hacer una fusión inversa, que es una combinación con el rango rev:rev-1. Por ejemplo, en la línea de comandos, si se encuentra en el directorio de trabajo:

`svn merge -r 90:89 .` 

En TortoiseSVN, parece que necesita para entrar en 90 para gama de revisiones a fusionar y comprobar el Fusión inversa casilla de verificación en el Merge dialog (No lo tengo, así que no puedo confirmar).

+1

La sintaxis alternativa (posiblemente más simple) para revertir una única revisión es: 'svn merge -c -90. ' –

4

Con TortoiseSVN abra el registro y encuentre la revisión que desea revertir. Haga clic derecho en la línea y seleccione "Revertir cambios de esta revisión". Esto hará modificaciones locales a su copia de trabajo, lo que deshará esa revisión.

+0

Esto solo funciona en Windows. Uso RapidSVN, la alternativa a Tortoise para Linux y no tiene esta funcionalidad. –

Cuestiones relacionadas