content conflicts xcode git tree conflict git-pull

xcode - content - git merge conflicts bitbucket



La operación no se pudo realizar porque "PROJECTNAME" tiene uno o más conflictos de árbol (5)

Estoy usando Git y cuando intenté extraer una rama de desarrollo más nueva con mi rama actual usando el menú de control de fuente de XCode recibí este mensaje de error:

The operation could not be performed because "ProjectName" has one or more tree conflicts.

¿Cómo resuelvo estos conflictos de árboles? Gracias


Estaba en problemas con este problema Ocurre a menudo cuando elimino o cambio el directory del proyecto. Por ejemplo, cuando muevo un directorio a otro directorio existente, ambos directorios son carpetas reales y existirá la advertencia.

De hecho, el significado de tree conflict de tree conflict es que el nivel de directorio en su repositorio de trabajo no es el mismo que en el servidor.

Es mi manera de resolver este problema:

  1. Verifique qué directorio en su repositorio de trabajo local difiere del repositorio del servidor.
  2. Si el repositorio local tiene un directorio adicional Eliminar (local) -> actualizar -> Aceptar, si el repositorio local carece de algo y los elementos adicionales en el servidor son innecesarios, Eliminar (servidor) -> actualizar. NOTE Después de esto, el conflicto de árbol ya no existe.

La esperanza ayuda.


Hay un conflicto en el archivo del proyecto que necesita extraer mediante la línea de comandos o una herramienta GUI como SourceTree (Gratis) y resolver manualmente el conflicto en un editor de texto o herramienta de diferencias.

Ver también: ¿Cómo usar Git correctamente con XCode?


Mi situación. Fusionar la rama maestra con cambios menores en mi versión actual en desarrollo o de trabajo. Resolví este problema por:

  1. Mover el archivo en desarrollo con el conflicto de árbol a mi escritorio (es decir, fuera del directorio controlado del repositorio).
  2. Cometiendo la versión más en desarrollo.
  3. Vuelva a ejecutar la combinación del maestro en la versión más reciente.
  4. Se resuelven los conflictos de fusión reales.
  5. Confirmó que el archivo que se fusionó de main a la rama en desarrollo estaba allí y era correcto.

Para mí, este error ocurrió cuando Xcode se confundió en la rama en la que se encontraba actualmente el proyecto. Así que lo resolví cambiando la rama a master y luego de nuevo a la rama anterior. Por lo tanto, intente esta solución simple primero.


Tuve un problema similar Así que abrí una ventana de terminal y cambié al directorio, verifiqué que mi sucursal estaba limpia con el git status , cambié a maestro usando el maestro de verificación de git checkout master y fusioné mi sucursal con git merge push-notifications . La página Git Branching - Basic Branching and Merging lo explica en detalle.