Resolución de conflictos de árboles


84

Cómo resolver el conflicto de árboles en el escenario actual.

C:\DevBranch
C:\MyBranch

Actualicé ambas ramas. Editó MyBranch y luego confirmó. Ahora quiero fusionar esos cambios en DevBranch. Cuando hago la fusión, aparece 'Tree Conflicts'

The last merge operation tried to add the file 'abc.def', but it was already added locally.

How do you want to resolve this conflict?
Keep the file from repository
Keep the local file

¿Cómo puedo resolverlo?

Respuestas:


167

Lo que puede hacer para resolver su conflicto es

svn resolve --accept working -R <path>

donde <path>es donde tiene su conflicto (puede ser la raíz de su repositorio).

Explicaciones:

  • resolvepide svnresolver el conflicto
  • accept working especifica mantener sus archivos de trabajo
  • -R significa recursivo

Espero que esto ayude.

EDITAR:

Para resumir lo dicho en los comentarios a continuación:

  • <path>debe ser el directorio en conflicto ( C:\DevBranch\en el caso del OP)
  • es probable que el origen del conflicto sea
    • ya sea el uso del svn switchcomando
    • o habiendo marcado la Switch working copy to new branch/tagopción en la creación de la rama
  • se puede encontrar más información sobre conflictos en la sección dedicada de la documentación de Tortoise .
  • para poder ejecutar el comando, debe tener las herramientas CLI instaladas junto con Tortoise:

Herramientas de cliente de línea de comandos


¿Cuál debería ser el camino? ¿C: \ DevBranch o C: \ MyBranch?
coure2011

2
Debería serlo C:\DevBranch. Por cierto, ¿usó el svn switchcomando en una de estas dos carpetas?
Yannick Blondeau

1
Creo que al crear la rama usé "cambiar directorio de trabajo"
coure2011

@Luke Puede hacerlo así si instaló las herramientas CLI junto con Tortoise. Solo cden la raíz de su copia de trabajo y ejecútelo svn resolve --accept working -R ./. Si necesita más información sobre cómo hacer esto con Tortoise, puede consultar la sección dedicada de la documentación ... ¡Espero que esto ayude!
Yannick Blondeau

0

Básicamente, los conflictos de árboles surgen si hay alguna reestructuración en la estructura de carpetas de la rama. Debe eliminar la carpeta de conflicto y usarla svn cleanuna vez. Espero que esto resuelva su conflicto.

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.