Jak wyświetlić tylko nie połączone pliki w git po awarii scalania


32

Podczas scalania niektórych plików nie udało się scalić.

git status

pokazuje zarówno udane, jak i nieudane połączenia.

Jak wyświetlić tylko nieudane pliki scalania (konflikt).

Obecnie używam do tego następującego polecenia

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

Odpowiedzi:


37
git diff

Pokaże to tylko nieudane scalenia po nieudanym scaleniu. Ma wiele opcji konfiguracji, które informacje chcesz zobaczyć. Podejrzewam, że jest to dokładnie ta opcja, której szukasz:

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

Zobacz także: http://www.kernel.org/pub/software/scm/git/docs/user-manual.html#resolving-a-merge i http://www.kernel.org/pub/software/scm/ git / docs / git-diff.html


9
Jeśli chcesz mieć czystą listę plików bez poprzedniego U, możesz zadzwonić git diff --name-only --diff-filter=U. W ten sposób możesz na przykład przesłać dane wyjściowe git diff --name-only --diff-filter=U | xargs subl.
JHannes


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

Ale ponieważ celem jest najprawdopodobniej edycja tych plików, następujące czynności będą doskonałe:

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

Dzięki @JHannes z komentarza innej odpowiedzi

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.