Pregunta Switch de TortoiseSVN Sucursales


He usado svn por un tiempo, pero recientemente se agregaron un par de equipos al proyecto. Uno de los equipos creó una nueva sucursal y me pidió que verificara algunos de sus cambios. Fui al directorio, clic derecho, svn-> cambiar y elegí la nueva rama. Entré y traté de hacer eco de algo en la página en la que estaba para ver si estaba trabajando en la nueva sucursal y no lo estaba. Esto es un poco más allá de lo que hago, pero con el proyecto tan grande, necesito aprender esto.

Basado en eso, mi pregunta ... ¿hay algo más en esto que no estoy haciendo? Después de cambiar la copia de trabajo a esta nueva rama, ¿cómo trabajo en ella?


16
2017-10-31 17:06


origen


Respuestas:


La diferencia entre el pago y el cambio podría estar aumentando la confusión. Creo que en su caso sería más simple simplemente verificar la sucursal en una carpeta diferente ya que solo está revisando y puede ser la forma más directa de proceder independientemente.

Ver esta sección de los documentos de Tortoise:

Para pagar o para cambiar ...

... esa es (no realmente) la pregunta. Mientras se descargan las descargas   todo, desde la rama deseada en el repositorio hasta su trabajo   directorio, TortoiseSVN → Switch ... solo transfiere los datos modificados a   tu copia de trabajo. Bueno para la carga de red, bueno para tu paciencia.   :-)

Para poder trabajar con su rama o etiqueta recién generada, tiene   varias formas de manejarlo. Usted puede:

TortoiseSVN → Pagar para hacer una nueva compra en una carpeta vacía.   Puede consultar cualquier ubicación en su disco local y puede   cree tantas copias de trabajo de su repositorio como desee.

Cambie su copia de trabajo actual a la copia recién creada en el   repositorio. Nuevamente seleccione la carpeta de nivel superior de su proyecto y use   TortoiseSVN → Cambiar ... desde el menú contextual.

En el siguiente cuadro de diálogo ingrese la URL de la rama que acaba de crear.   Seleccione el botón de opción Revisión de cabeza y haga clic en Aceptar. Tu trabajo   la copia se cambia a la nueva rama / etiqueta.

Switch funciona igual que Update, ya que nunca descarta su local   cambios. Cualquier cambio que haya realizado en su copia de trabajo que no tenga   aún se ha comprometido se fusionará cuando haces el cambio. Si lo haces   no quiere que esto suceda, entonces debe confirmar los cambios antes   cambiar, o revertir su copia de trabajo a un ya comprometido   revisión (generalmente HEAD).

Si desea trabajar en el tronco y la rama, pero no desea el gasto de   una nueva comprobación, puede usar Windows Explorer para hacer una copia de su   pago del tronco en otra carpeta, luego TortoiseSVN → Cambiar ... eso   copia a tu nueva sucursal


24
2017-10-31 17:09



En el diálogo habitual de "Propiedades" (haga clic con el botón derecho en el Explorador de Windows), tiene una pestaña "Subversión" que le indicará a qué URL apunta el archivo o directorio. Úselo para verificar que realmente cambió a la rama correcta.

Tampoco vale la pena que los cambios locales no confirmados aún estén en su copia de trabajo.


3
2017-10-31 17:11



Puede haber una idea errónea acerca de svn switch :

Al principio pensé que la existencia de un comando de cambio implicaría que hubiera una copia de trabajo "actual" o "seleccionada" para el correcto funcionamiento de SVN. Al igual que estoy trabajando actualmente en el tronco, entonces estoy trabajando en una rama B, por lo tanto, "cambiar" de una copia de trabajo a otra. La verdad es : no existe una copia de trabajo actual ! Hay muchas copias de trabajo locales: una para el tronco, una para una rama, otra para una etiqueta, etc. Pero ninguno sería "seleccionado implícitamente".

Como Paul Sasik cita: switch permitiría, por ejemplo, tener solo una copia de trabajo de decir, el enlace troncal, y luego, fusionar esa copia de trabajo local con una rama o etiqueta específica del repositorio remoto. switch solo sincronice las diferencias entre lo local y lo remoto, evitando así hacer una comprobación completa de una solución. La ejecución anterior del comando, cada compromiso adicional en la copia de trabajo ocurrirá en la carpeta de repositorio distante a la que se ha cambiado, que ha sido el objetivo. No importa cuál fue la salida inicial para esa carpeta local.


1
2018-02-24 11:11