diff options
author | Nguyễn Thái Ngọc Duy <pclouds@gmail.com> | 2018-02-24 15:09:59 +0100 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2018-02-28 00:22:47 +0100 |
commit | ddf88fa6166473be15822739e0a12aad4edfbbc5 (patch) | |
tree | 71eaf83e9daea261115b3b654b1e27a22bebcce9 /diff.h | |
parent | diff.c: refactor pprint_rename() to use strbuf (diff) | |
download | git-ddf88fa6166473be15822739e0a12aad4edfbbc5.tar.xz git-ddf88fa6166473be15822739e0a12aad4edfbbc5.zip |
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>
Diffstat (limited to 'diff.h')
-rw-r--r-- | diff.h | 1 |
1 files changed, 1 insertions, 0 deletions
@@ -93,6 +93,7 @@ struct diff_flags { unsigned funccontext:1; unsigned pickaxe_ignore_case:1; unsigned default_follow_renames:1; + unsigned stat_with_summary:1; }; static inline void diff_flags_or(struct diff_flags *a, |