The first two patches in this series are a small bugfix and an internal clean-up for the underlying "diff-index" engine used by "git status" when it inspects how the index differs from the HEAD commit. The third one separates the logic to inspect the changes in the index and the work tree from the code to show the result in "git status" command, so that collected data can be presented in different formats more easily. It is roughly based on an old patch of mine from October last year, but it collects a bit more detail on conflicted paths. The fourth one changes the output from the "git status" command when unmerged paths are present. We now have a separate "Unmerged paths" section at the beginning and describe the nature of the conflict in more detail. The last one is a bit iffy, but shows how the new infrastructure can be used to present the "git status" output in a more succinct and machine readble format. Junio C Hamano (5): diff-index: report unmerged new entries diff-index: keep the original index intact wt-status.c: rework the way changes to the index and work tree are summarized status: show worktree status of conflicted paths separately shortstatus: a new command Makefile | 1 + builtin-commit.c | 107 +++++++++++++++++- builtin.h | 1 + diff-lib.c | 22 +---- git.c | 1 + t/t7060-wtstatus.sh | 31 +++++ wt-status.c | 314 +++++++++++++++++++++++++++++++++++++++++++-------- wt-status.h | 11 ++ 8 files changed, 418 insertions(+), 70 deletions(-) create mode 100755 t/t7060-wtstatus.sh -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html