summaryrefslogtreecommitdiff
path: root/git-rebase.sh
diff options
context:
space:
mode:
authorTor Arne Vestbø <torarnv@gmail.com>2009-03-01 22:11:38 (GMT)
committerJunio C Hamano <gitster@pobox.com>2009-03-03 07:22:32 (GMT)
commita9c3821ca2fec065260b4314d61337a7529aba5b (patch)
treebd0a4c7fb22e9913c4713c44dff7b25c84c66828 /git-rebase.sh
parentf474c526618d5d1111b585a6344e012fb731d3fe (diff)
downloadgit-a9c3821ca2fec065260b4314d61337a7529aba5b.zip
git-a9c3821ca2fec065260b4314d61337a7529aba5b.tar.gz
git-a9c3821ca2fec065260b4314d61337a7529aba5b.tar.bz2
git-rebase: Add --stat and --no-stat for producing diffstat on rebase
The behavior of --verbose is unchanged, but uses a different state variable internally, so that the meaning of verbose output may be expanded without affecting the diffstat. This is also reflected in the documentation. The configuration option rebase.stat works the same was as merg.stat, but the default is currently false. Signed-off-by: Tor Arne Vestbø <torarnv@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'git-rebase.sh')
-rwxr-xr-xgit-rebase.sh25
1 files changed, 18 insertions, 7 deletions
diff --git a/git-rebase.sh b/git-rebase.sh
index 368c0ef..26d75662 100755
--- a/git-rebase.sh
+++ b/git-rebase.sh
@@ -46,6 +46,7 @@ do_merge=
dotest="$GIT_DIR"/rebase-merge
prec=4
verbose=
+diffstat=$(git config --bool rebase.stat)
git_am_opt=
rebase_root=
@@ -289,8 +290,15 @@ do
esac
do_merge=t
;;
+ -n|--no-stat)
+ diffstat=
+ ;;
+ --stat)
+ diffstat=t
+ ;;
-v|--verbose)
verbose=t
+ diffstat=t
;;
--whitespace=*)
git_am_opt="$git_am_opt $1"
@@ -426,18 +434,21 @@ then
exit 0
fi
-if test -n "$verbose"
-then
- echo "Changes from $mb to $onto:"
- # We want color (if set), but no pager
- GIT_PAGER='' git diff --stat --summary "$mb" "$onto"
-fi
-
# Detach HEAD and reset the tree
echo "First, rewinding head to replay your work on top of it..."
git checkout -q "$onto^0" || die "could not detach HEAD"
git update-ref ORIG_HEAD $branch
+if test -n "$diffstat"
+then
+ if test -n "$verbose"
+ then
+ echo "Changes from $mb to $onto:"
+ fi
+ # We want color (if set), but no pager
+ GIT_PAGER='' git diff --stat --summary "$mb" "$onto"
+fi
+
# If the $onto is a proper descendant of the tip of the branch, then
# we just fast forwarded.
if test "$mb" = "$branch"