Confirmar cambios en una rama diferente a la rama actualmente extraída con subversion


115

He estado trabajando en el código extraído de la línea de desarrollo y descubrí que los cambios realizados podrían ser cambios importantes y es necesario moverlos a una rama experimental antes de comprometerme con el árbol de desarrollo principal. Sin embargo, no he revisado la rama experimental y no quiero perder los cambios que ya se han realizado.

¿Hay alguna forma de confirmar los cambios en la carpeta de trabajo en una rama diferente a la que se extrajo originalmente?

Respuestas:


129

Primero debe crear una rama a partir de una conocida sourceURL(esta sería su 'línea de desarrollo' que mencionó en la pregunta):

svn copy sourceURL branchURL

Luego, cambie a esa rama:

svn switch branchURL

Y confirma tus cambios:

svn commit

55

Podrías hacerlo en TortoiseSVN así:

  • Haga clic derecho en el directorio donde están los cambios que desea bifurcar. No debe ser la raíz del repositorio, menos duplicar de esa manera;
  • Seleccione TortoiseSVN -> " Rama / etiqueta ... ";
  • Establecer en URL : "svn: // host / repositorio / FooBar / ramas / FooBarBranchName";
  • Asegúrese de que [*] Copia de trabajo esté seleccionada . Esto asegurará que los cambios se confirmen;
  • Mensaje de registro : "Experimentando con moscas :)";
  • Opcional: Marque [*] Cambiar copia de trabajo a nueva rama / etiqueta . Esto es útil si planea seguir trabajando en la nueva rama. Aunque también puedes cambiarlo más tarde.
  • Intente encontrar el botón Aceptar . Pista: está en la parte inferior de la ventana centrada.

¡Disfrutar!


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

Recomiendo no elegir la carpeta raíz con todas las subcarpetas irrelevantes que no están sujetas a modificaciones en la rama. Más adelante será más fácil fusionar la rama (más pequeña) con el tronco.
— J Pollack

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

@ ikku100 si no hay cambios en esas supercarpetas, ¿qué importancia tendría?
— simpleuser

Podría porque las personas más adelante podrían realizar cambios allí, pero supongo que puede verificar la revisión correcta de la supercarpeta y luego verificar la rama de la subcarpeta. Creo que es más trabajo que comprometerse con el superdir.
— ikku100

8

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

Los comandos son svn copyysvn switch

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.