mirror of
https://github.com/git/git.git
synced 2026-02-25 17:33:34 +00:00
whatchanged: customize diff-tree output
This allows the configuration item whatchanged.difftree to
control the output from git-whatchanged command. For example:
[whatchanged]
difftree = --pretty=fuller --name-status -M
does rename detection, shows the commit header in "fuller"
format and lists affected pathnames and the kind of changes to
them.
When no such configuration item exists, the output format
defaults to "--pretty -M --abbrev".
Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
@@ -4,9 +4,15 @@ USAGE='[-p] [--max-count=<n>] [<since>..<limit>] [--pretty=<format>] [-m] [git-d
|
||||
SUBDIRECTORY_OK='Yes'
|
||||
. git-sh-setup
|
||||
|
||||
diff_tree_flags=$(git-rev-parse --sq --no-revs --flags "$@")
|
||||
test -z "$diff_tree_flags" &&
|
||||
diff_tree_flags=$(git-repo-config --get whatchanged.difftree)
|
||||
test -z "$diff_tree_flags" &&
|
||||
diff_tree_flags='-M --abbrev'
|
||||
|
||||
rev_list_args=$(git-rev-parse --sq --default HEAD --revs-only "$@") &&
|
||||
diff_tree_args=$(git-rev-parse --sq --no-revs "$@") &&
|
||||
diff_tree_args=$(git-rev-parse --sq --no-revs --no-flags "$@") &&
|
||||
|
||||
eval "git-rev-list $rev_list_args" |
|
||||
eval "git-diff-tree --stdin --pretty -r $diff_tree_args" |
|
||||
eval "git-diff-tree --stdin --pretty -r $diff_tree_flags $diff_tree_args" |
|
||||
LESS="$LESS -S" ${PAGER:-less}
|
||||
|
||||
Reference in New Issue
Block a user