* [PATCH] git-submodule summary: --for-status option
@ 2008-03-12 2:23 Ping Yin
0 siblings, 0 replies; only message in thread
From: Ping Yin @ 2008-03-12 2:23 UTC (permalink / raw)
To: git; +Cc: gitster, Ping Yin
The --for-status option is mainly used by builtin-status/commit.
It adds 'Modified submodules:' line at top and '# ' prefix to all
following lines.
---
git-submodule.sh | 17 ++++++++++++++++-
t/t7401-submodule-summary.sh | 13 +++++++++++++
2 files changed, 29 insertions(+), 1 deletions(-)
diff --git a/git-submodule.sh b/git-submodule.sh
index c47b364..da9d5c8 100755
--- a/git-submodule.sh
+++ b/git-submodule.sh
@@ -342,6 +342,7 @@ set_name_rev () {
#
cmd_summary() {
summary_limit=-1
+ for_status=
# parse $args after "submodule ... summary".
while test $# -ne 0
@@ -350,6 +351,9 @@ cmd_summary() {
--cached)
cached="$1"
;;
+ --for-status)
+ for_status="$1"
+ ;;
-n|--summary-limit)
if summary_limit=$(($2 + 0)) 2>/dev/null && test "$summary_limit" = "$2"
then
@@ -398,6 +402,12 @@ cmd_summary() {
)
test -n "$modules" &&
+ if test -n "$for_status"; then
+ echo "# Modified submodules:"
+ echo "#"
+ else
+ true
+ fi &&
git diff-index $cached --raw $head -- $modules |
grep -e '^:160000' -e '^:[0-7]* 160000' |
cut -c2- |
@@ -493,7 +503,12 @@ cmd_summary() {
echo
fi
echo
- done
+ done |
+ if test -n "$for_status"; then
+ sed -e "s|^|# |" -e 's|^# $|#|'
+ else
+ cat
+ fi
}
#
# List all submodules, prefixed with:
diff --git a/t/t7401-submodule-summary.sh b/t/t7401-submodule-summary.sh
index 0f3c42a..1dbb39d 100755
--- a/t/t7401-submodule-summary.sh
+++ b/t/t7401-submodule-summary.sh
@@ -192,4 +192,17 @@ test_expect_success 'given commit' "
EOF
"
+test_expect_success '--for-status' "
+ git submodule summary --for-status HEAD^ >actual &&
+ diff actual - <<-EOF
+# Modified submodules:
+#
+# * sm1 $head6...0000000:
+#
+# * sm2 0000000...$head7 (2):
+# > Add foo9
+#
+EOF
+"
+
test_done
--
1.5.4.3.347.g5314c
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2008-03-12 2:24 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-03-12 2:23 [PATCH] git-submodule summary: --for-status option Ping Yin
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).