2009-10-03 10 views
7

Acabo de empezar a trabajar en algunos cambios contra el tronco en un repositorio SVN, pensando que serían algo pequeños. Ahora, en realidad me estoy dando cuenta de que probablemente debería haber empezado una nueva rama. En lugar de hacer una rama, y ​​luego mover cada pieza individual en ella, ¿hay alguna manera de hacer una nueva rama y luego confirmar los cambios en mi copia de trabajo?¿Hay alguna forma de confirmar los cambios que he realizado en mi checkout de SVN en una rama?

Respuesta

13
  1. crea una nueva rama desde el lugar donde se inició el desarrollo de
  2. interruptor a la rama recién creada
  3. confirmar los cambios locales (se comprometerá a la nueva rama)

no hacen CUALQUIER PAGO

Lo hago con svn 1.6.5, funciona sin problemas, pero si usted es realmente paranoico puede hacer lo siguiente:

  1. crear un parche de copia de trabajo actual
  2. crear una rama
  3. interruptor para que
  4. aplicar el parche
  5. cometer
+0

El único problema es que la ramificación de mi copia de trabajo no parece funcionar bien para mí. Supongo que debería intentar el segundo conjunto de pasos. –

+0

En realidad, la bifurcación se puede realizar sin copia de trabajo. Si usa TortoiseSvn, por ejemplo, con el navegador del repositorio o desde la línea de comandos. – jdehaan

+0

Yo quería publicar una referencia, pero svnbook.red-bean.com parece ser inalcanzable por el momento, al menos, de Europa ... – jdehaan

2

¿Qué pasa con la creación de un parche de su trabajo actual con svn diff , luego crear una nueva sucursal y aplicar el parche a la sucursal con patch -p0?

2

Puede derivar directamente el estado de su copia de trabajo a una URL con el comando svn copy. La rama creada incluirá las modificaciones locales.

también algunas precauciones:

  • puede obtener errores que indican algo como "El archivo ya existe". Esto es causado por una falta de coincidencia de las revisiones base en su copia de trabajo, más específicamente entre un archivo y su carpeta principal. Una posible solución es hacer un svn update antes de intentando bifurcar de esta manera.
  • después del svn copy, la copia de trabajo no se modificará. Todavía señalará el tronco. También mostrará las modificaciones locales en su estado. Usted primero debe revertir estas modificaciones, ya sea continúa utilizando la copia de trabajo como es o activarlo o a la nueva rama.
Cuestiones relacionadas