git/t/t4013
Nguyễn Thái Ngọc Duy ddf88fa616 diff: add --compact-summary
Certain information is currently shown with --summary, but when used
in combination with --stat it's a bit hard to read since info of the
same file is in two places (--stat and --summary).

On top of that, commits that add or remove files double the number of
display lines, which could be a lot if you add or remove a lot of
files.

--compact-summary embeds most of --summary back in --stat in the
little space between the file name part and the graph line, e.g. with
commit 0433d533f1:

   Documentation/merge-config.txt         |  4 +
   builtin/merge.c                        |  2 +
   ...-pull-verify-signatures.sh (new +x) | 81 ++++++++++++++
   t/t7612-merge-verify-signatures.sh     | 45 ++++++++
   4 files changed, 132 insertions(+)

It helps both condensing information and saving some text
space. What's new in diffstat is:

- A new 0644 file is shown as (new)
- A new 0755 file is shown as (new +x)
- A new symlink is shown as (new +l)
- A deleted file is shown as (gone)
- A mode change adding executable bit is shown as (mode +x)
- A mode change removing it is shown as (mode -x)

Note that --compact-summary does not contain all the information
--summary provides. Rewrite percentage is not shown but it could be
added later, like R50% or C20%.

Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2018-02-27 15:22:47 -08:00
..
diff.config_format.subjectprefix_DIFFERENT_PREFIX format-patch: Add format.subjectprefix config option 2007-07-02 21:05:45 -07:00
diff.diff_--abbrev_initial..side
diff.diff_--cached diff: support --cached on unborn branches 2011-02-07 15:04:30 -08:00
diff.diff_--cached_--_file0 diff: support --cached on unborn branches 2011-02-07 15:04:30 -08:00
diff.diff_--dirstat_initial_rearrange Teach --dirstat not to completely ignore rearranged lines within a file 2011-04-11 11:16:15 -07:00
diff.diff_--dirstat_master~1_master~2 Test diff --dirstat functionality 2009-02-20 00:02:48 -08:00
diff.diff_--dirstat-by-file_initial_rearrange --dirstat-by-file: Make it faster and more correct 2011-04-11 10:12:24 -07:00
diff.diff_--line-prefix_--cached_--_file0 graph: add support for --line-prefix on all graph-aware output 2016-08-31 18:07:09 -07:00
diff.diff_--line-prefix=abc_master_master^_side graph: add support for --line-prefix on all graph-aware output 2016-08-31 18:07:09 -07:00
diff.diff_--name-status_dir2_dir "git diff": do not ignore index without --no-index 2008-05-24 00:16:39 -07:00
diff.diff_--no-index_--name-status_--_dir2_dir diff: accept -- when using --no-index 2009-01-06 23:18:20 -08:00
diff.diff_--no-index_--name-status_dir2_dir "git diff": do not ignore index without --no-index 2008-05-24 00:16:39 -07:00
diff.diff_--no-index_--raw_--abbrev=4_dir2_dir diff: handle --no-abbrev in no-index case 2016-12-08 14:40:30 -08:00
diff.diff_--no-index_--raw_--no-abbrev_dir2_dir diff: handle --no-abbrev in no-index case 2016-12-08 14:40:30 -08:00
diff.diff_--no-index_--raw_dir2_dir diff: handle --no-abbrev in no-index case 2016-12-08 14:40:30 -08:00
diff.diff_--no-index_dir_dir3 Skip timestamp differences for diff --no-index 2009-02-18 10:55:33 -08:00
diff.diff_--patch-with-raw_-r_initial..side
diff.diff_--patch-with-raw_initial..side
diff.diff_--patch-with-stat_-r_initial..side diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.diff_--patch-with-stat_initial..side diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.diff_--raw_--abbrev=4_initial diff: handle --no-abbrev in no-index case 2016-12-08 14:40:30 -08:00
diff.diff_--raw_--no-abbrev_initial diff: handle --no-abbrev in no-index case 2016-12-08 14:40:30 -08:00
diff.diff_--raw_initial diff: handle --no-abbrev in no-index case 2016-12-08 14:40:30 -08:00
diff.diff_--stat_initial..side diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.diff_-r_--stat_initial..side diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.diff_-r_initial..side
diff.diff_initial..side
diff.diff_master_master^_side "git diff <tree>{3,}": do not reverse order of arguments 2008-10-12 12:36:19 -07:00
diff.diff-tree_--cc_--patch-with-stat_--summary_master diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.diff-tree_--cc_--patch-with-stat_--summary_side diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.diff-tree_--cc_--patch-with-stat_master diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.diff-tree_--cc_--stat_--summary_master diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.diff-tree_--cc_--stat_--summary_side diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.diff-tree_--cc_--stat_master diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.diff-tree_--cc_master
diff.diff-tree_--patch-with-raw_initial
diff.diff-tree_--patch-with-stat_initial
diff.diff-tree_--pretty_--patch-with-raw_initial
diff.diff-tree_--pretty_--patch-with-stat_initial
diff.diff-tree_--pretty_--patch-with-stat_side diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.diff-tree_--pretty_--root_--patch-with-raw_initial
diff.diff-tree_--pretty_--root_--patch-with-stat_initial diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.diff-tree_--pretty_--root_--stat_--compact-summary_initial diff: add --compact-summary 2018-02-27 15:22:47 -08:00
diff.diff-tree_--pretty_--root_--stat_--summary_initial diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.diff-tree_--pretty_--root_--stat_initial diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.diff-tree_--pretty_--root_--summary_-r_initial
diff.diff-tree_--pretty_--root_--summary_initial
diff.diff-tree_--pretty_--root_-p_initial
diff.diff-tree_--pretty_--root_initial
diff.diff-tree_--pretty_--stat_--summary_initial
diff.diff-tree_--pretty_--stat_initial
diff.diff-tree_--pretty_--summary_initial
diff.diff-tree_--pretty_-p_initial
diff.diff-tree_--pretty_-p_side
diff.diff-tree_--pretty_-R_--root_--stat_--compact-summary_initial diff: add --compact-summary 2018-02-27 15:22:47 -08:00
diff.diff-tree_--pretty_initial
diff.diff-tree_--pretty_side
diff.diff-tree_--pretty=oneline_--patch-with-raw_initial
diff.diff-tree_--pretty=oneline_--patch-with-stat_initial
diff.diff-tree_--pretty=oneline_--root_--patch-with-raw_initial
diff.diff-tree_--pretty=oneline_--root_--patch-with-stat_initial diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.diff-tree_--pretty=oneline_--root_-p_initial
diff.diff-tree_--pretty=oneline_--root_initial
diff.diff-tree_--pretty=oneline_-p_initial
diff.diff-tree_--pretty=oneline_initial
diff.diff-tree_--root_--abbrev_initial
diff.diff-tree_--root_--patch-with-raw_initial
diff.diff-tree_--root_--patch-with-stat_initial diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.diff-tree_--root_-p_initial
diff.diff-tree_--root_-r_--abbrev_initial
diff.diff-tree_--root_-r_--abbrev=4_initial
diff.diff-tree_--root_-r_initial
diff.diff-tree_--root_initial
diff.diff-tree_--stat_--compact-summary_initial_mode diff: add --compact-summary 2018-02-27 15:22:47 -08:00
diff.diff-tree_--stat_initial_mode diff: correct newline in summary for renamed files 2017-09-28 13:15:59 +09:00
diff.diff-tree_--summary_initial_mode diff: correct newline in summary for renamed files 2017-09-28 13:15:59 +09:00
diff.diff-tree_-c_--abbrev_master
diff.diff-tree_-c_--stat_--summary_master diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.diff-tree_-c_--stat_--summary_side diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.diff-tree_-c_--stat_master diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.diff-tree_-c_master
diff.diff-tree_-p_-m_master
diff.diff-tree_-p_initial
diff.diff-tree_-p_master
diff.diff-tree_-r_--abbrev_initial
diff.diff-tree_-r_--abbrev=4_initial
diff.diff-tree_-R_--stat_--compact-summary_initial_mode diff: add --compact-summary 2018-02-27 15:22:47 -08:00
diff.diff-tree_-r_initial
diff.diff-tree_initial
diff.diff-tree_initial_mode diff: correct newline in summary for renamed files 2017-09-28 13:15:59 +09:00
diff.diff-tree_master
diff.format-patch_--attach_--stdout_--suffix=.diff_initial..side diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.format-patch_--attach_--stdout_initial..master diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.format-patch_--attach_--stdout_initial..master^ diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.format-patch_--attach_--stdout_initial..side diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.format-patch_--inline_--stdout_--numbered-files_initial..master diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.format-patch_--inline_--stdout_--subject-prefix=TESTCASE_initial..master diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.format-patch_--inline_--stdout_initial..master diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.format-patch_--inline_--stdout_initial..master^ diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.format-patch_--inline_--stdout_initial..master^^ diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.format-patch_--inline_--stdout_initial..side diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.format-patch_--stdout_--cover-letter_-n_initial..master^ diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.format-patch_--stdout_--no-numbered_initial..master diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.format-patch_--stdout_--numbered_initial..master diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.format-patch_--stdout_initial..master diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.format-patch_--stdout_initial..master^ diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.format-patch_--stdout_initial..side diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.log_--decorate_--all diff: correct newline in summary for renamed files 2017-09-28 13:15:59 +09:00
diff.log_--decorate=full_--all diff: correct newline in summary for renamed files 2017-09-28 13:15:59 +09:00
diff.log_--patch-with-stat_--summary_master_--_dir_ diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.log_--patch-with-stat_master diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.log_--patch-with-stat_master_--_dir_ diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.log_--root_--cc_--patch-with-stat_--summary_master diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.log_--root_--patch-with-stat_--summary_master diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.log_--root_--patch-with-stat_master diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.log_--root_-c_--patch-with-stat_--summary_master diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.log_--root_-p_master log: do not print ellipses with --abbrev-commit 2009-02-13 17:18:22 -08:00
diff.log_--root_master log: do not print ellipses with --abbrev-commit 2009-02-13 17:18:22 -08:00
diff.log_-GF_-p_--pickaxe-all_master diff/log -G<pattern>: tests 2010-08-31 14:30:29 -07:00
diff.log_-GF_-p_master diff/log -G<pattern>: tests 2010-08-31 14:30:29 -07:00
diff.log_-GF_master diff/log -G<pattern>: tests 2010-08-31 14:30:29 -07:00
diff.log_-m_-p_--first-parent_master t4013: add tests for log -p -m --first-parent 2010-03-09 01:11:18 -08:00
diff.log_-m_-p_master t4013: add tests for log -p -m --first-parent 2010-03-09 01:11:18 -08:00
diff.log_-p_--first-parent_master t4013: add tests for log -p -m --first-parent 2010-03-09 01:11:18 -08:00
diff.log_-p_master log: do not print ellipses with --abbrev-commit 2009-02-13 17:18:22 -08:00
diff.log_-S_F_master diff: parse separate options like -S foo 2010-08-06 09:14:22 -07:00
diff.log_-SF_-p_master
diff.log_-SF_master Clean up "git log" format with DIFF_FORMAT_NO_OUTPUT 2007-10-15 20:24:27 -04:00
diff.log_-SF_master_--max-count=0 log: fix --max-count when used together with -S or -G 2011-03-09 14:28:24 -08:00
diff.log_-SF_master_--max-count=1 log: fix --max-count when used together with -S or -G 2011-03-09 14:28:24 -08:00
diff.log_-SF_master_--max-count=2 log: fix --max-count when used together with -S or -G 2011-03-09 14:28:24 -08:00
diff.log_master log: do not print ellipses with --abbrev-commit 2009-02-13 17:18:22 -08:00
diff.noellipses-diff_--no-index_--raw_--abbrev=4_dir2_dir t4013: test new output from diff --abbrev --raw 2017-12-06 07:32:59 -08:00
diff.noellipses-diff_--no-index_--raw_dir2_dir t4013: test new output from diff --abbrev --raw 2017-12-06 07:32:59 -08:00
diff.noellipses-diff_--patch-with-raw_-r_initial..side t4013: test new output from diff --abbrev --raw 2017-12-06 07:32:59 -08:00
diff.noellipses-diff_--patch-with-raw_initial..side t4013: test new output from diff --abbrev --raw 2017-12-06 07:32:59 -08:00
diff.noellipses-diff_--raw_--abbrev=4_initial t4013: test new output from diff --abbrev --raw 2017-12-06 07:32:59 -08:00
diff.noellipses-diff_--raw_initial t4013: test new output from diff --abbrev --raw 2017-12-06 07:32:59 -08:00
diff.noellipses-diff-tree_--root_--abbrev_initial t4013: test new output from diff --abbrev --raw 2017-12-06 07:32:59 -08:00
diff.noellipses-diff-tree_--root_-r_--abbrev_initial t4013: test new output from diff --abbrev --raw 2017-12-06 07:32:59 -08:00
diff.noellipses-diff-tree_--root_-r_--abbrev=4_initial t4013: test new output from diff --abbrev --raw 2017-12-06 07:32:59 -08:00
diff.noellipses-diff-tree_-c_--abbrev_master t4013: test new output from diff --abbrev --raw 2017-12-06 07:32:59 -08:00
diff.noellipses-show_--patch-with-raw_side t4013: test new output from diff --abbrev --raw 2017-12-06 07:32:59 -08:00
diff.noellipses-whatchanged_--root_master t4013: test new output from diff --abbrev --raw 2017-12-06 07:32:59 -08:00
diff.noellipses-whatchanged_-SF_master t4013: test new output from diff --abbrev --raw 2017-12-06 07:32:59 -08:00
diff.noellipses-whatchanged_master t4013: test new output from diff --abbrev --raw 2017-12-06 07:32:59 -08:00
diff.rev-list_--children_HEAD Test rev-list --parents/--children 2009-02-20 00:02:48 -08:00
diff.rev-list_--parents_HEAD Test rev-list --parents/--children 2009-02-20 00:02:48 -08:00
diff.show_--first-parent_master show --first-parent/-m: do not default to --cc 2010-03-09 01:11:19 -08:00
diff.show_--patch-with-raw_side
diff.show_--patch-with-stat_--summary_side diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.show_--patch-with-stat_side diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.show_--root_initial
diff.show_--stat_--summary_side diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.show_--stat_side diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.show_-c_master show -c: show patch text 2010-03-09 01:11:18 -08:00
diff.show_-m_master show --first-parent/-m: do not default to --cc 2010-03-09 01:11:19 -08:00
diff.show_initial
diff.show_master log: do not print ellipses with --abbrev-commit 2009-02-13 17:18:22 -08:00
diff.show_side
diff.whatchanged_--patch-with-stat_--summary_master_--_dir_ diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.whatchanged_--patch-with-stat_master diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.whatchanged_--patch-with-stat_master_--_dir_ diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.whatchanged_--root_--cc_--patch-with-stat_--summary_master diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.whatchanged_--root_--patch-with-stat_--summary_master diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.whatchanged_--root_--patch-with-stat_master diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.whatchanged_--root_-c_--patch-with-stat_--summary_master diff --stat: use less columns for change counts 2012-04-30 14:17:26 -07:00
diff.whatchanged_--root_-p_master
diff.whatchanged_--root_master
diff.whatchanged_-p_master
diff.whatchanged_-SF_-p_master
diff.whatchanged_-SF_master
diff.whatchanged_master