git status: Show detailed dirty status of submodules in long format
authorJens Lehmann <Jens.Lehmann@web.de>
Mon, 8 Mar 2010 12:53:19 +0000 (13:53 +0100)
committerJunio C Hamano <gitster@pobox.com>
Mon, 8 Mar 2010 23:49:23 +0000 (15:49 -0800)
commit9297f77e6d350f33de961e149dc33c77e7392db4
tree6ef83ac56865487414747ff0756fad64d9b3c7cc
parentc7e1a73641e24340bf93f6f1792220fa9154cda3
git status: Show detailed dirty status of submodules in long format

Since 1.7.0 there are three reasons a submodule is considered modified
against the work tree: It contains new commits, modified content or
untracked content. Lets show all reasons in the long format of git status,
so the user can better asses the nature of the modification. This change
does not affect the short and porcelain formats.

Two new members are added to "struct wt_status_change_data" to store the
information gathered by run_diff_files(). wt-status.c uses the new flag
DIFF_OPT_DIRTY_SUBMODULES to tell diff-lib.c it wants to get detailed
dirty information about submodules.

A hint line for submodules is printed in the dirty header when dirty
submodules are present.

Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
diff-lib.c
diff.h
t/t7506-status-submodule.sh
wt-status.c
wt-status.h