Как вывести список конфликтующих файлов (файлов с изменениями у обоих родителей) в git merge commit? - PullRequest
2 голосов
/ 21 июля 2011

У qgit есть хорошая опция просмотра "интересных" файлов в коммите слияния, где интересный файл определяется как файл, который имеет изменения в обоих родителях.Какой будет соответствующая командная строка для просмотра таких файлов?

1 Ответ

4 голосов
/ 21 июля 2011
git show --name-status SHA1_of_merge

покажет вам сообщение фиксации и файлы, измененные в обоих родителях (MM).

например, для репозитория git.git в коммите d907bf8ef32: ветвь слияния 'jc / index-pack ' мы видим:

$ git show --name-status d907bf8ef327cd47433d4a4bb0a1bb4e96b6e340
commit d907bf8ef327cd47433d4a4bb0a1bb4e96b6e340
Merge: 54dbc1f 3de89c9
…

MM      builtin/index-pack.c
MM      builtin/pack-objects.c
MM      cache.h
MM      csum-file.c
MM      fast-import.c
MM      sha1_file.c

, если вас не волнует сообщение о коммите и тому подобное, страница руководства git show указывает вам формат, используемый для коммитов слияния: git diff-tree --cc.поэтому, если вы хотите видеть только хэш коммита и "интересные файлы", используйте:

$git diff-tree --cc --name-status d907bf8ef327cd47433d4a4bb0a1bb4e96b6e340
d907bf8ef327cd47433d4a4bb0a1bb4e96b6e340
MM  builtin/index-pack.c
MM  builtin/pack-objects.c
MM  cache.h
MM  csum-file.c
MM  fast-import.c
MM  sha1_file.c
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...