]> git.ipfire.org Git - thirdparty/git.git/blame - git-whatchanged.sh
blame.c: fix completely broken ancestry traversal.
[thirdparty/git.git] / git-whatchanged.sh
CommitLineData
02481aec 1#!/bin/sh
1403959c
FK
2
3USAGE='[-p] [--max-count=<n>] [<since>..<limit>] [--pretty=<format>] [-m] [git-diff-tree options] [git-rev-list options]'
4SUBDIRECTORY_OK='Yes'
5. git-sh-setup
6
73e5456e 7diff_tree_flags=$(git-rev-parse --sq --no-revs --flags "$@") || exit
80d48ac6
JH
8case "$0" in
9*whatchanged)
10 count=
11 test -z "$diff_tree_flags" &&
12 diff_tree_flags=$(git-repo-config --get whatchanged.difftree)
6932c78c 13 diff_tree_default_flags='-c -M --abbrev' ;;
80d48ac6
JH
14*show)
15 count=-n1
16 test -z "$diff_tree_flags" &&
17 diff_tree_flags=$(git-repo-config --get show.difftree)
18 diff_tree_default_flags='--cc --always' ;;
19esac
9b157702 20test -z "$diff_tree_flags" &&
80d48ac6 21 diff_tree_flags="$diff_tree_default_flags"
9b157702 22
5bb2c65a 23rev_list_args=$(git-rev-parse --sq --default HEAD --revs-only "$@") &&
9b157702 24diff_tree_args=$(git-rev-parse --sq --no-revs --no-flags "$@") &&
5bb2c65a 25
80d48ac6 26eval "git-rev-list $count $rev_list_args" |
9b157702 27eval "git-diff-tree --stdin --pretty -r $diff_tree_flags $diff_tree_args" |
5bb2c65a 28LESS="$LESS -S" ${PAGER:-less}