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 коммит произвёл Junio C Hamano
Родитель 2579e1d293
Коммит 7e60407f7a
2 изменённых файлов: 11 добавлений и 4 удалений

Просмотреть файл

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

Просмотреть файл

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