Sospecho que tengo mergeinfo corrupto, pero no estoy seguro. ¿Alguien sabe cómo tomaría una determinación y qué recursos hay disponibles para ayudar a solucionar los problemas?¿Cómo puedo determinar si svn: mergeinfo está dañado y cómo lo solucionaría?
Aquí está la cuestión. Mi equipo se movió recientemente a Agile y usa ramas de características (ramas de historia realmente) donde diferentes equipos trabajan en las mismas fuentes al mismo tiempo. A medida que la historia alcanza un alto estado de preparación, el equipo se fusiona con el tronco. Las fusiones demoran días o semanas debido a cambios faltantes, cambios inesperados y conflictos. Estamos hablando de equipos de 5-10 personas y el esfuerzo/abandono parece demasiado alto.
La gente usa el patrón de esta fusión a) Pull - fusionar tronco-a-rama, resolver, prueba, comprometerse b) PUSH - fusionar la rama-a-tronco, resolver, prueba, comprometerse c) Volver a crear la rama (o, por lo general, crea una nueva rama de historia y descarta la antigua, ya que está hecha)
Al final de esto, la rama y el tronco deben estar alineados.
problemas que estamos viendo:
- cambios no reportados durante tronco-a-rama fusionar aparecer en posteriores rama-tronco
- conflictos sobre propiedades svn: info de fusión durante la fusión
- falta el archivo, pero se edita localmente en el nuevo archivo agregado en la rama y se lo envía al tronco
- eliminación entrante + local (el archivo eliminado en el tronco y la rama se muestran como conflicto)
(1) No debería estar sucediendo. La extracción de la rama al tronco debe poner los dos en sincronización para todos los cambios que ya están en el tronco. Los cambios en la fusión de rama a tronco son cambios que ocurrieron en el tronco. Entonces en la primera fusión deberían haberse propagado a la rama pero no lo hicieron. Esto apunta a la corrupción en los datos mergeinfo que "ocultarían" los cambios en el tronco.
(2) No debería estar sucediendo. SVN debe administrar los cambios en el seguimiento de fusión. Esto también apunta a la corrupción en los datos mergeinfo
(3) No debería estar sucediendo. Este es un caso de un nuevo archivo agregado en una sucursal. Debería aparecer como un nuevo archivo agregado al tronco. Esto también apunta a la corrupción en los datos de información de fusión.
(4) Creo que esto es un error SVN y que no podemos solucionarlo. Aún así, si este fuera nuestro único problema, estaría contento
Actualmente estamos en el servidor svn 1.5.x con clientes que usan svn 1.6.x y svn + ssh para conectar. Planeamos ir al último y mejor SVN ya que algunas correcciones pueden afectar nuestros problemas.
Aún así, parece que nuestros datos mergeinfo son incorrectos.
- Merges que no informar todos los cambios
- Los conflictos en la combinación de las propiedades mergeinfo
Cualquier buenos lugares para mí para empezar a buscar?
SVN 1.6.11 cliente puede ser mi respuesta. Usé el sitio de actualización de wandisco (que oscila) y el infierno de fusión es mucho menos ambicioso –
¿Estás usando la bandera "--reintegrate" para la fusión "push"? El hecho de que tengas un paso de "resolver" después de que me sugiera que no es así. No puedo encontrar documentación específica que indique que las fusiones bidireccionales sin "--reintegrate" no pueden funcionar, pero la mera existencia de "--reintegrate" sugiere que la fusión de svn no está a la altura de la tarea. – slowdog