2010-05-06 23 views
101

He estado trabajando en el código desprotegido de la línea de desarrollo y descubrí que los cambios realizados podrían estar rompiendo cambios y deben trasladarse a una rama experimental antes comprometerse con el árbol de desarrollo principal. Sin embargo, no tengo la rama experimental revisada y no quiero perder los cambios que ya se han realizado.Confirmar cambios en una rama diferente a la rama actualmente desprotegida con subversión

¿Hay alguna manera de enviar los cambios en la carpeta de trabajo a una rama diferente de la que originalmente se prestó?

Respuesta

112

Debe crear una rama de un conocido sourceURL (este sería su 'línea de desarrollo' que ha mencionado en la pregunta) primero:

svn copy sourceURL branchURL 

Entonces, cambie a esa sucursal:

svn switch branchURL 

Y comprometa sus cambios:

svn commit 
8

Puede crear una nueva bifurcación directamente desde su directorio de trabajo y cambiar el directorio de trabajo a esa bifurcación.

Los comandos son svn copy y svn switch

44

Se podía hacerlo en el TortoiseSVN así:

  • Haga clic derecho sobre el directorio donde están los cambios que desea en rama. No debe ser la raíz del repositorio, menos duplicar de esa manera;
  • Seleccionar TortoiseSVN -> "Sucursal/etiqueta ...";
  • Conjunto Para URL: "svn: // host/repository/FooBar/branches/FooBarBranchName";
  • Asegúrese de que [*] Copia de trabajo esté seleccionada. Esto asegurará que los cambios estén comprometidos;
  • Mensaje de registro: "Experimentar con moscas :)";
  • Opcional: Marque [*] Cambie la copia de trabajo a la nueva rama/etiqueta. Esto es útil si planea seguir trabajando en la nueva sucursal. Aunque puedes cambiarlo más tarde también.
  • Intente encontrar el botón OK. Sugerencia: está en la parte inferior de la ventana centrada.

¡Disfrútalo!

+0

¿Qué quiere decir con "No debe ser la raíz del repositorio, menos duplicar de esa manera"? – thekozak

+0

Recomiendo no elegir la carpeta raíz con todas las subcarpetas irrelevantes que no están sujetas a modificación en la rama. Más tarde será más fácil combinar la rama (más pequeña) con el tronco. –

+0

En mi caso, comprometer solo esa carpeta causó problemas porque el software también depende de supercarpetas. Creo que ese es el caso más a menudo. Creo que para la mayoría de los casos de uso es mejor simplemente comprometer todo, por lo que se recomienda comprometerse desde la raíz que digo. – ikku100

Cuestiones relacionadas