Add a configuration option to control diffstat after merge

The diffstat can be controlled either with command-line options
(--summary|--no-summary) or with merge.diffstat. The default is
left as it was: diffstat is active by default.

Signed-off-by: Alex Riesen <raa.lkml@gmail.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
Alex Riesen 2007-05-23 23:01:29 +02:00 committed by Junio C Hamano
parent 18bece4367
commit 51e7ecf4ec
4 changed files with 20 additions and 7 deletions

View file

@ -9,7 +9,7 @@ git-merge - Join two or more development histories together
SYNOPSIS
--------
[verse]
'git-merge' [-n] [--no-commit] [--squash] [-s <strategy>]...
'git-merge' [-n] [--summary] [--no-commit] [--squash] [-s <strategy>]...
[-m <msg>] <remote> <remote>...
DESCRIPTION

View file

@ -1,3 +1,7 @@
--summary::
Show a diffstat at the end of the merge. The diffstat is also
controlled by the configuration option merge.diffstat.
-n, \--no-summary::
Do not show diffstat at the end of the merge.

View file

@ -3,7 +3,7 @@
# Copyright (c) 2005 Junio C Hamano
#
USAGE='[-n] [--no-commit] [--squash] [-s <strategy>] [-m=<merge-message>] <commit>+'
USAGE='[-n] [--summary] [--no-commit] [--squash] [-s <strategy>] [-m=<merge-message>] <commit>+'
SUBDIRECTORY_OK=Yes
. git-sh-setup
@ -88,12 +88,11 @@ finish () {
'')
;;
?*)
case "$no_summary" in
'')
if test "$show_diffstat" = t
then
# We want color (if set), but no pager
GIT_PAGER='' git-diff --stat --summary -M "$head" "$1"
;;
esac
fi
;;
esac
}
@ -126,7 +125,9 @@ do
case "$1" in
-n|--n|--no|--no-|--no-s|--no-su|--no-sum|--no-summ|\
--no-summa|--no-summar|--no-summary)
no_summary=t ;;
show_diffstat=false ;;
--summary)
show_diffstat=t ;;
--sq|--squ|--squa|--squas|--squash)
squash=t no_commit=t ;;
--no-c|--no-co|--no-com|--no-comm|--no-commi|--no-commit)
@ -168,6 +169,11 @@ do
shift
done
if test -z "$show_diffstat"; then
test "$(git-config --bool merge.diffstat)" = false && show_diffstat=false
test -z "$show_diffstat" && show_diffstat=t
fi
# This could be traditional "merge <msg> HEAD <commit>..." and the
# way we can tell it is to see if the second token is HEAD, but some
# people might have misused the interface and used a committish that

View file

@ -22,6 +22,9 @@ do
-n|--n|--no|--no-|--no-s|--no-su|--no-sum|--no-summ|\
--no-summa|--no-summar|--no-summary)
no_summary=-n ;;
--summary)
no_summary=$1
;;
--no-c|--no-co|--no-com|--no-comm|--no-commi|--no-commit)
no_commit=--no-commit ;;
--sq|--squ|--squa|--squas|--squash)