¿Cómo puedo volver a un compromiso anterior de SVN?

Supongamos que estoy en la revisión 50. Pero, quiero volver a la revisión 45 y volver a comprometerme como la versión estable.

¿Cómo hago eso, de la manera más simple?

  1. ¿Qué pasa si quiero hacer eso con un file?
  2. ¿Qué pasa si quiero hacer eso con todo el repository?

No estoy seguro de lo que quiere decir con "volver a comprometerse como la versión estable", pero dependiendo de lo que intente lograr, recomiendo:

svn update -r45
Esto rebase su copy de trabajo en la revisión 45.

o:

svn merge -c -50, -49, -48, -47, -46
Esto actualizará (mediante la fusión inversa) su copy de trabajo eliminando todos los cambios entre 45 y 50. Ahora, si realiza cambios y confirma, será como si hubiera eliminado 46-50 del repository y realizado la revisión HEAD (51 ?) ser r45 + tu cambio.

Invertir fusionar las revisiones que desea deshacer. Esto se puede hacer en uno o varios files. Mediante la fusión inversa, su copy de trabajo cambia al estado sin esa revisión, que luego puede confirmar.

Simplemente puede hacer una actualización de la revisión usando

svn up -r 45 

Pero esto no le permitirá comprometer los cambios ya que SVN necesita que actualice su copy de trabajo a HEAD antes de poder comprometerse. Lo que puedes hacer en cambio es

 svn merge -r HEAD:45 yourFile svn ci yourFile -m "Reverting back to rev 45" 

Creo que una manera simple debería ser esta:

  • comprobación revisión 45 a un directory temporal
  • copie uno o todos los files en su directory de trabajo
  • cometer