Error de Git al confirmar después de la fusión: fatal: no se puede realizar una confirmación parcial durante una fusión

Resuelto pMan asked hace 13 años • 22 respuestas

Ejecuté un git pullque terminó en un conflicto. Resolví el conflicto y ahora todo está bien (también usé mergetool).

Cuando envío el archivo resuelto, git commit file.php -m "message"aparece el error:

fatal: cannot do a partial commit during a merge.

Tuve el mismo problema antes y usarlo -aen commit funcionó perfectamente. Creo que no es la manera perfecta porque no quiero realizar todos los cambios. Quiero enviar archivos por separado con comentarios separados. ¿Cómo puedo hacer eso? ¿Por qué git no permite a los usuarios enviar archivos por separado después de una fusión? No pude encontrar una respuesta satisfactoria a este problema.

pMan avatar Apr 29 '11 11:04 pMan
Aceptado

Descubrí que agregar "-i" al comando de confirmación soluciona este problema. El -i básicamente le dice que prepare archivos adicionales antes de enviarlos. Eso es:

git commit -i myfile.php
MikaelHalen avatar Nov 09 '2011 09:11 MikaelHalen
git commit -am 'Conflicts resolved'

Esto funcionó para mí. Puedes probar esto también.

Pratip Ghosh avatar Jan 09 '2014 05:01 Pratip Ghosh

Puedes usarlo git commit -ien la mayoría de los casos, pero en caso de que no funcione.

Necesitas hacer git commit -m "your_merge_message". Durante un conflicto de fusión no se puede fusionar un solo archivo, por lo que es necesario

  1. Preparar sólo el archivo en conflicto ( git add your_file.txt)
  2. git commit -m "your_merge_message"
aWebDeveloper avatar Mar 07 '2013 09:03 aWebDeveloper

Obtuve esto cuando olvidé el -mcompromiso de git al resolver un conflicto de fusión de git.

git commit "commit message"

debiera ser

git commit -m "commit message"
wgeorge avatar Nov 10 '2015 17:11 wgeorge

Probablemente tengas un conflicto en algo que no has preparado para comprometerte. git no te permitirá confirmar cosas de forma independiente (porque supongo que todo es parte de la fusión), por lo que necesitas git addese archivo y luego git commit -m "Merge conflict resolution". La -ibandera de git commithace el complemento por usted.

Paul Price avatar Jan 19 '2012 22:01 Paul Price