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>
This commit is contained in:
Jens Lehmann 2011-07-26 23:39:03 +02:00 committed by Junio C Hamano
parent 2579e1d293
commit 7e60407f7a
2 changed files with 11 additions and 4 deletions

View File

@ -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"
}

View File

@ -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