diff options
author | Mårten Kongstad <marten.kongstad@gmail.com> | 2015-03-02 16:05:39 +0100 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2015-03-02 11:31:27 -0800 |
commit | ab27389affc78a521fe44fc25518e1d11a4fc433 (patch) | |
tree | f4e2bd8937198745c42fa1083f6ea2d6c8a9ee01 /diff.c | |
parent | 282616c72d1d08a77ca4fe1186cb708c38408d87 (diff) | |
download | git-ab27389affc78a521fe44fc25518e1d11a4fc433.tar.gz |
diff --shortstat --dirstat: remove duplicate outputmk/diff-shortstat-dirstat-fix
When --shortstat is used in conjunction with --dirstat=changes, git diff will
output the dirstat information twice: first as calculated by the 'lines'
algorithm, then as calculated by the 'changes' algorithm:
$ git diff --dirstat=changes,10 --shortstat v2.2.0..v2.2.1
23 files changed, 453 insertions(+), 54 deletions(-)
33.5% Documentation/RelNotes/
26.2% t/
46.6% Documentation/RelNotes/
16.6% t/
The same duplication happens for --shortstat together with --dirstat=files, but
not for --shortstat together with --dirstat=lines.
Limit output to only include one dirstat part, calculated as specified
by the --dirstat parameter. Also, add test for this.
Signed-off-by: Mårten Kongstad <marten.kongstad@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'diff.c')
-rw-r--r-- | diff.c | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -4528,7 +4528,7 @@ void diff_flush(struct diff_options *options) show_stats(&diffstat, options); if (output_format & DIFF_FORMAT_SHORTSTAT) show_shortstats(&diffstat, options); - if (output_format & DIFF_FORMAT_DIRSTAT) + if (output_format & DIFF_FORMAT_DIRSTAT && dirstat_by_line) show_dirstat_by_line(&diffstat, options); free_diffstat_info(&diffstat); separator++; |