git-submodule summary: limit summary size
This patch teaches git-submodule an option '--summary-limit|-n <number>' to limit number of commits in total for the summary of each submodule in the modified case (only a single commit is shown in other cases). Giving 0 will disable the summary; a negative number means unlimted, which is the default. Signed-off-by: Ping Yin <pkufranky@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
1cb639e6b0
commit
f2dc06a344
@ -4,7 +4,9 @@
|
||||
#
|
||||
# Copyright (c) 2007 Lars Hjemli
|
||||
|
||||
USAGE='[--quiet] [--cached] [add <repo> [-b branch]|status|init|update|summary [<commit>]] [--] [<path>...]'
|
||||
USAGE="[--quiet] [--cached] \
|
||||
[add <repo> [-b branch]|status|init|update|summary [-n|--summary-limit <n>] [<commit>]] \
|
||||
[--] [<path>...]"
|
||||
OPTIONS_SPEC=
|
||||
. git-sh-setup
|
||||
require_work_tree
|
||||
@ -329,6 +331,8 @@ set_name_rev () {
|
||||
# $@ = [commit (default 'HEAD'),] requested paths (default all)
|
||||
#
|
||||
cmd_summary() {
|
||||
summary_limit=-1
|
||||
|
||||
# parse $args after "submodule ... summary".
|
||||
while test $# -ne 0
|
||||
do
|
||||
@ -336,6 +340,15 @@ cmd_summary() {
|
||||
--cached)
|
||||
cached="$1"
|
||||
;;
|
||||
-n|--summary-limit)
|
||||
if summary_limit=$(($2 + 0)) 2>/dev/null && test "$summary_limit" = "$2"
|
||||
then
|
||||
:
|
||||
else
|
||||
usage
|
||||
fi
|
||||
shift
|
||||
;;
|
||||
--)
|
||||
shift
|
||||
break
|
||||
@ -350,6 +363,8 @@ cmd_summary() {
|
||||
shift
|
||||
done
|
||||
|
||||
test $summary_limit = 0 && return
|
||||
|
||||
if rev=$(git rev-parse --verify "$1^0" 2>/dev/null)
|
||||
then
|
||||
head=$rev
|
||||
@ -458,8 +473,10 @@ cmd_summary() {
|
||||
else
|
||||
if test $mod_src = 160000 -a $mod_dst = 160000
|
||||
then
|
||||
limit=
|
||||
test $summary_limit -gt 0 && limit="-$summary_limit"
|
||||
GIT_DIR="$name/.git" \
|
||||
git log --pretty='format: %m %s' \
|
||||
git log $limit --pretty='format: %m %s' \
|
||||
--first-parent $sha1_src...$sha1_dst
|
||||
elif test $mod_dst = 160000
|
||||
then
|
||||
|
Loading…
Reference in New Issue
Block a user