mirror of
https://github.com/git/git.git
synced 2024-11-18 19:53:58 +01:00
9b15770220
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>
19 lines
669 B
Bash
Executable File
19 lines
669 B
Bash
Executable File
#!/bin/sh
|
|
|
|
USAGE='[-p] [--max-count=<n>] [<since>..<limit>] [--pretty=<format>] [-m] [git-diff-tree options] [git-rev-list options]'
|
|
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 --no-flags "$@") &&
|
|
|
|
eval "git-rev-list $rev_list_args" |
|
|
eval "git-diff-tree --stdin --pretty -r $diff_tree_flags $diff_tree_args" |
|
|
LESS="$LESS -S" ${PAGER:-less}
|