2010-05-18 27 views
6

Estoy en una situación estúpida: he hecho algunos cambios en una copia de trabajo del TRONCO. Dado que los cambios no se han probado, me gustaría transferir todos los cambios a una rama. De acuerdo con el manual de Tortoise, Switch perderá todas mis modificaciones. ¿Hay alguna forma de mantener mis cambios en la copia de trabajo y guardarlos en una sucursal en el repositorio.Crear rama SVN desde cambios en el tronco

Respuesta

0

No directamente. Pero puede hacer un parche, luego cambiar y perder los cambios, luego aplicar el parche a su rama.

Richt-haga clic en su carpeta de copia de trabajo superior, elija Tortoise SVN> Crear parche. Elija los archivos que se incluirán (generalmente todos los cambios) y guárdelo en algún lugar.

Luego cambie.

A continuación, vuelva a hacer clic en la copia de trabajo (que ahora apunta a la rama), y elija Tortoise SVN> Aplicar parche. Obtendrá un menú donde puede hacer clic con el botón derecho y seleccionar Aplicar todo. Guarde los cambios y debería estar listo para continuar.

+0

Gracias, intentaré con este método. – John

+0

Parece que esta respuesta fue downvoted (aunque tiene un puntaje de 0, puedo verlo en mi configuración de Reputación). puede alguien decirme por que? – Peter

13

Cree una rama desde su copia de trabajo en lugar del repositorio. De esta manera no perderá nada

+0

¿Quiere decir Branch/Tag? Pero, ¿cómo podría cambiarse el enlace predeterminado a la copia de trabajo? – John

+0

Puedes cambiar después de eso. Sus cambios serán confiados a la nueva rama y no hay problema con el cambio. Perderá noithing – Midhat

+3

En TortoiseSVN haga clic en Branch/Tag y luego, en lugar de seleccionar HEAD o revisión específica, elija el botón de opción de copia de trabajo. De eso es de lo que Midhat está hablando. –

8

Si entiendo el problema correctamente, está trabajando en una copia que haya sacado TRUNK, pero aún no ha confirmado los cambios.

En ese caso, es fácil de resolver este problema:

  1. crear una rama desde TRUNK: svn cp <base URL> <new branch URL>
  2. Cambiar a la nueva rama (especificado por <new branch URL> arriba)
  3. Ahora su copia de trabajo debe punto a la <new branch URL>
  4. confirmar los cambios

Ya que no han cometido nada que TRUNK, la versión TRUNK del proyecto se deja sin modificar

+0

¡Buena explicación clara! (2) podría usar un comando de ejemplo "svn switch " –

0

Crear un parche de los cambios y luego aplicarlo a cualquier sucursal o copia de trabajo que le gusta.

+0

Esto no proporciona una respuesta a la pregunta. Para criticar o solicitar aclaraciones de un autor, deje un comentario debajo de su publicación; siempre puede comentar sus propias publicaciones, y una vez que tenga suficiente [reputación] (http://stackoverflow.com/faq#reputation) podrá para [comentar cualquier publicación] (http://stackoverflow.com/privileges/comment). – slfan

+1

Creo que mi respuesta es muy relevante para la pregunta. – abbas

Cuestiones relacionadas