Skip to content

Commit

Permalink
Merge branch 'mk/diff-shortstat-dirstat-fix' into maint
Browse files Browse the repository at this point in the history
"git diff --shortstat --dirstat=changes" showed a dirstat based on
lines that was never asked by the end user in addition to the
dirstat that the user asked for.

* mk/diff-shortstat-dirstat-fix:
  diff --shortstat --dirstat: remove duplicate output
  • Loading branch information
gitster committed Mar 14, 2015
2 parents 30a52c1 + ab27389 commit a4b4f9b
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 1 deletion.
2 changes: 1 addition & 1 deletion diff.c
Original file line number Diff line number Diff line change
Expand Up @@ -4541,7 +4541,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++;
Expand Down
14 changes: 14 additions & 0 deletions t/t4047-diff-dirstat.sh
Original file line number Diff line number Diff line change
Expand Up @@ -973,4 +973,18 @@ test_expect_success 'diff.dirstat=future_param,0,lines should warn, but still wo
test_i18ngrep -q "diff\\.dirstat" actual_error
'

test_expect_success '--shortstat --dirstat should output only one dirstat' '
git diff --shortstat --dirstat=changes HEAD^..HEAD >out &&
grep " dst/copy/changed/$" out >actual_diff_shortstat_dirstat_changes &&
test_line_count = 1 actual_diff_shortstat_dirstat_changes &&
git diff --shortstat --dirstat=lines HEAD^..HEAD >out &&
grep " dst/copy/changed/$" out >actual_diff_shortstat_dirstat_lines &&
test_line_count = 1 actual_diff_shortstat_dirstat_lines &&
git diff --shortstat --dirstat=files HEAD^..HEAD >out &&
grep " dst/copy/changed/$" out >actual_diff_shortstat_dirstat_files &&
test_line_count = 1 actual_diff_shortstat_dirstat_files
'

test_done

0 comments on commit a4b4f9b

Please sign in to comment.