status: show worktree status of conflicted paths separately
authorJunio C Hamano <gitster@pobox.com>
Wed, 5 Aug 2009 07:04:51 +0000 (00:04 -0700)
committerJunio C Hamano <gitster@pobox.com>
Fri, 7 Aug 2009 04:16:01 +0000 (21:16 -0700)
commit4d4d5726aee31522e90df21ef62ee3377c5d8f8d
treecc1a50ed2de0a96f98415017b824ab8865a5ec0c
parent50b7e70f338e54f3534ee1b14c3bdb4c80d0dcf7
status: show worktree status of conflicted paths separately

When a path is unmerged in the index, we used to always say "unmerged" in
the "Changed but not updated" section, even when the path was deleted in
the work tree.

Remove unmerged entries from the "Updated" section, and create a new
section "Unmerged paths".  Describe how the different stages conflict
in more detail in this new section.

Note that with the current 3-way merge policy (with or without recursive),
certain combinations of index stages should never happen.  For example,
having only stage #2 means that a path that did not exist in the common
ancestor was added by us while the other branch did not do anything to it,
which would have autoresolved to take our addition.  The code nevertheless
prepares for the possibility that future merge policies may leave a path
in such a state.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t7060-wtstatus.sh
wt-status.c
wt-status.h