summaryrefslogtreecommitdiff
path: root/git-submodule.sh
diff options
context:
space:
mode:
authorLibravatar Lars Hjemli <hjemli@gmail.com>2007-06-11 21:12:22 +0200
committerLibravatar Junio C Hamano <gitster@pobox.com>2007-06-12 01:06:21 -0700
commitbf2d824660c976e0d0e773f9c5095a6abaf388ae (patch)
tree780725e572d5a40ada82759076e2473034c759b8 /git-submodule.sh
parentt7400: barf if git-submodule removes or replaces a file (diff)
downloadtgif-bf2d824660c976e0d0e773f9c5095a6abaf388ae.tar.xz
git-submodule: remember to checkout after clone
After the initial clone of a submodule, no files would be checked out in the submodule directory if the submodule HEAD was equal to the SHA-1 specified in the index of the containing repository. This fixes the problem by simply ignoring submodule HEAD for a fresh clone. Signed-off-by: Lars Hjemli <hjemli@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'git-submodule.sh')
-rwxr-xr-xgit-submodule.sh9
1 files changed, 5 insertions, 4 deletions
diff --git a/git-submodule.sh b/git-submodule.sh
index 8bdd99a2f3..4a6d64d61c 100755
--- a/git-submodule.sh
+++ b/git-submodule.sh
@@ -100,12 +100,13 @@ modules_update()
if ! test -d "$path"/.git
then
module_clone "$path" "$url" || exit
+ subsha1=
+ else
+ subsha1=$(unset GIT_DIR && cd "$path" &&
+ git-rev-parse --verify HEAD) ||
+ die "Unable to find current revision of submodule '$path'"
fi
- subsha1=$(unset GIT_DIR && cd "$path" &&
- git-rev-parse --verify HEAD) ||
- die "Unable to find current revision of submodule '$path'"
-
if test "$subsha1" != "$sha1"
then
(unset GIT_DIR && cd "$path" && git-fetch &&