SVN fusiona el enlace en los files de eliminación de sucursales

Estoy tratando de hacer algo aparentemente simple, pero teniendo problemas.

Básicamente, tengo un repository svn, tiene un tronco y una twig que se creó a partir de la revisión 122.

Agregué un file (src / utils / foo.py) a la sucursal, lo asigné como revisión 128, todo bien.

Sin embargo, ha habido varias confirmaciones (a saber, (123, 124, 125, 126, 127) en el enlace que quisiera en mi sucursal. Por lo tanto, hago algo como:

$ svn merge -r122:127 ^/projects/my_project/trunk/src/utils . --- Merging r123 through r127 into '.': D foo.py 

¡Ups! Borró mi file! ¿Qué estoy haciendo mal para que esto no suceda?

Puede tener más que ver con la carpeta que posee el file, que con el file en sí. Creo que la mayoría de las herramientas de SCM tratan carpetas como files porque también tienen versiones. Es posible que deba upload un nivel para asegurarse de que la carpeta "utils" también se fusione.

Editar:

Para explicar un poco más, es la carpeta "utils" la que registra que el file "foo.py" es secundario, por lo que incluso si foo.py existe en el enlace troncal, sin fusionar la carpeta actualizada de utils, es posible que no se muestre. .

¿Primero está en el directory correcto donde ejecutó el command svn merge? Segundo, nunca fusione solo subcarpetas en SVN. Solo usa

 svn merge ... ^/projects/my_project/trunk 

en la raíz de tu copy de trabajo. Eso será mejor en particular en relación con el historial de combinación (svn: mergeinfo).

Ah! De hecho, alguien había fusionado la twig en el tronco, que agregó el file al tronco, pero luego revertió esa confirmación, eliminando el file del tronco. Gracias por la ayuda. Buena lección sobre cómo funciona svn merge.

Intereting Posts