summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJens Lehmann <Jens.Lehmann@web.de>2011-07-26 23:39:03 +0200
committerJunio C Hamano <gitster@pobox.com>2011-07-28 12:48:26 -0700
commit7e60407f7a36bd1f7fd505f9aa9580a837fbb190 (patch)
treed651cda63afbd15251c74bd1a8db516ee051bd9b
parent2579e1d2936ad4e385ef21e5c346d9853d7faa01 (diff)
downloadgit-7e60407f7a36bd1f7fd505f9aa9580a837fbb190.tar.gz
submodule: update and add must honor --quiet flag
When using the --quiet flag "git submodule update" and "git submodule add" didn't behave as the documentation stated. They printed progress output from the clone, even though they should only print error messages. Fix that by passing the -q flag to git clone in module_clone() when the GIT_QUIET variable is set. Two tests in t7400 have been modified to test that behavior. Reported-by: Daniel Holtmann-Rice <flyingtabmow@gmail.com> Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rwxr-xr-xgit-submodule.sh9
-rwxr-xr-xt/t7400-submodule-basic.sh6
2 files changed, 11 insertions, 4 deletions
diff --git a/git-submodule.sh b/git-submodule.sh
index d189a24c71..11eab50802 100755
--- a/git-submodule.sh
+++ b/git-submodule.sh
@@ -121,12 +121,17 @@ module_clone()
path=$1
url=$2
reference="$3"
+ quiet=
+ if test -n "$GIT_QUIET"
+ then
+ quiet=-q
+ fi
if test -n "$reference"
then
- git-clone "$reference" -n "$url" "$path"
+ git-clone $quiet "$reference" -n "$url" "$path"
else
- git-clone -n "$url" "$path"
+ git-clone $quiet -n "$url" "$path"
fi ||
die "Clone of '$url' into submodule path '$path' failed"
}
diff --git a/t/t7400-submodule-basic.sh b/t/t7400-submodule-basic.sh
index 874279e32d..f086db1073 100755
--- a/t/t7400-submodule-basic.sh
+++ b/t/t7400-submodule-basic.sh
@@ -75,7 +75,8 @@ test_expect_success 'submodule add' '
(
cd addtest &&
- git submodule add "$submodurl" submod &&
+ git submodule add -q "$submodurl" submod >actual &&
+ test ! -s actual &&
git submodule init
) &&
@@ -273,7 +274,8 @@ test_expect_success 'update should work when path is an empty dir' '
echo "$rev1" >expect &&
mkdir init &&
- git submodule update &&
+ git submodule update -q >update.out &&
+ test ! -s update.out &&
inspect init &&
test_cmp expect head-sha1