Cómo ver solo los archivos no fusionados en git después de un error de fusión


33

Al fusionar algunos de los archivos no se pudieron fusionar.

git status

muestra las fusiones exitosas y fallidas.

Cómo ver solo los archivos de fusión sin éxito (conflicto).

Actualmente estoy usando el siguiente comando para hacer esto

 find . -name '*.cpp' -o -name '*.h' | xargs grep -l '<<<<'

Respuestas:


37
git diff

Esto solo mostrará fusiones fallidas después de una fusión fallida. Tiene muchas opciones para configurar qué información desea ver. Sospecho que esta es la opción exacta que buscas:

 git diff --name-status --diff-filter=U

Consulte también http://www.kernel.org/pub/software/scm/git/docs/user-manual.html#resolving-a-merge y http://www.kernel.org/pub/software/scm/ git / docs / git-diff.html


99
Si desea una lista limpia de archivos sin la U anterior, puede llamar git diff --name-only --diff-filter=U. De esta manera puede canalizar la salida, por ejemplo, do git diff --name-only --diff-filter=U | xargs subl.
JHannes


7
git --no-pager diff --name-only --diff-filter=U

Pero como es más probable que el objetivo edite esos archivos, lo siguiente será perfecto:

vim $(git diff --name-only --diff-filter=U)

Gracias a @JHannes por el comentario de otra respuesta

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.