show, log: include conflict/warning messages in --remerge-diff headers

Conflicts such as modify/delete, rename/rename, or file/directory are
not representable via content conflict markers, and the normal output
messages notifying users about these were dropped with --remerge-diff.
While we don't want these messages randomly shown before the commit
and diff headers, we do want them to still be shown; include them as
part of the diff headers instead.

Signed-off-by: Elijah Newren <newren@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Elijah Newren
2022-02-02 02:37:35 +00:00
committed by Junio C Hamano
parent 95433eeed9
commit 20323d104e
4 changed files with 206 additions and 0 deletions

View File

@ -5,6 +5,7 @@
struct commit;
struct tree;
struct strmap;
struct merge_result {
/*
@ -23,6 +24,15 @@ struct merge_result {
*/
struct tree *tree;
/*
* Special messages and conflict notices for various paths
*
* This is a map of pathnames to strbufs. It contains various
* warning/conflict/notice messages (possibly multiple per path)
* that callers may want to use.
*/
struct strmap *path_messages;
/*
* Additional metadata used by merge_switch_to_result() or future calls
* to merge_incore_*(). Includes data needed to update the index (if