tutorial - resolve merge conflicts eclipse git
Eclipse EGit Checkout conflicto con los archivos:-EGit no quiere continuar (5)
He comenzado Eclipse EGit. En algunos escenarios, en realidad no es exhaustivo.
Tengo un archivo local, por ejemplo pom.xml cambiado. En el servidor de git este archivo fue cambiado. Lo hago, EGIt dice:
Conflicto de salida con archivos:
es decir, tirar se detiene (la fetch
está hecha, pero no se merge
), eso está bien. Sin embargo, el siguiente es una mala experiencia.
Sincronizo el espacio de trabajo, pongo mis cambios a un lado y lo hago igual que FETCH_HEAD. Pero EGit no quiere continuar. Reemplace el archivo con la revisión HEAD. Pero EGit todavía no quiere continuar.
¿Qué operación estándar esperada para el usuario debería ser con EGit después de la resolución del conflicto?
ACTUALIZAR:
added to index
, luego marked as Merged
-> pull
todavía no puede pasar.
Cuando selecciono Merge
, obtengo el diálogo
No puedo enviar el archivo porque no está en la lista de archivos modificados.
- Después de cerrar el Diálogo de Error de Conflicto; desde Project Explorer, haga clic derecho en el encabezado del proyecto -> Equipo -> Stashes -> Cambios de Stash
- Ingrese un nombre para su escondite. EG "Conflicto"
- Intente tirar de nuevo. Espero que no haya errores esta vez.
- Desde la vista de Repositorio de Git, expanda su repositorio -> Compromisos contrastados
- Haga clic con el botón derecho en el alijo que creó en el paso 2 -> Aplicar cambios controlados
- Esto muestra la herramienta de combinación si no puede fusionarla automáticamente.
- Resuelva manualmente los conflictos de fusión en el / los archivo / s.
- Haga clic derecho en el editor de archivos -> Equipo -> Agregar al índice
- Si no está listo para enviar el archivo o simplemente no lo quiere en el índice, haga clic con el botón secundario en el editor de archivos -> Equipo -> Eliminar del índice.
- Limpieza: desde la vista de Repositorio de Git, haga clic con el botón derecho en el alijo que creó en el paso 2 -> Eliminar confirmación de dispersión
Su archivo de directorio de trabajo local debe fusionarse
Creo que la mejor manera de hacer esto es así:
- Almacene todos sus cambios en una rama separada.
- Luego haga un restablecimiento completo en el maestro local.
- A continuación, fusione sus cambios desde la sucursal creada localmente
- Luego comprometa y presione sus cambios.
Así como yo resuelvo el mío, siempre que sucede.
Esta es la forma en que resolví mi problema:
- Haga clic derecho en la carpeta que tiene cambios no confirmados en su local
- Haz clic en Equipo> Avanzado> Asumir sin cambios
-
Pull
del maestro.
ACTUALIZAR:
Como señaló acertadamente Hugo Zuleta , debe tener cuidado al aplicar esto. Él dice que podría terminar diciendo que la rama está actualizada, pero los cambios no se muestran, lo que resulta en la desincronización de la sucursal.
Si se produce un error para ".settings / language.settings.xml" o cualquier archivo de este tipo, no es necesario que lo haga.
- Equipo -> Confirmar -> Lista de archivos en etapas, verificar si existe un archivo no deseado, -> Hacer clic con el botón derecho en cada uno -> eliminar del índice.
- Desde la lista de archivos UnStaged, compruebe si existe un archivo no deseado, -> haga clic con el botón derecho en cada uno -> Ignorar.
Ahora, si la lista de archivos por etapas está vacía, y la lista de archivos sin escena, todos los archivos están marcados como Ignorados. Puedes tirar. De lo contrario, sigue otras respuestas.
Situación:
- Usted tiene cambios locales no confirmados
- Sacas del repositorio maestro
- Obtiene el error "Checkout conflict with files: xy"
Solución:
- Etapa y compromiso (al menos) de los archivos xy
- Tire de nuevo
- Si automerge es posible, todo está bien.
- Si no, la extracción fusiona los archivos e inserta los marcadores de conflicto de combinación (<<<<<<, >>>>)
- Edite manualmente los archivos conflictivos
- Comprometerse y empujar