merge doesn't work when init
authorCarl Fürstenberg <azatoth@gmail.com>
Thu, 17 Mar 2011 19:40:07 +0000 (20:40 +0100)
committerCarl Fürstenberg <azatoth@gmail.com>
Fri, 18 Mar 2011 16:59:16 +0000 (17:59 +0100)
sadly the merge strategy doesn't work when doing an initial clone,
circumvent that

Makefile

index 99e742d..2c7bb80 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -98,8 +98,16 @@ distclean: clean
        @@rm -rf test/qunit src/sizzle
 
 # change pointers for submodules and update them to what is specified in jQuery
+# --merge  doesn't work when doing an initial clone, thus test if we have non-existing
+#  submodules, then do an real update
 update_submodules:
-       @@if [ -d .git ]; then git submodule update --init --recursive --merge; fi
+       @@if [ -d .git ]; then \
+               if git submodule status | grep -q -E '^-'; then \
+                       git submodule update --init --recursive; \
+               else \
+                       git submodule update --init --recursive --merge; \
+               fi; \
+       fi;
 
 # update the submodules to the latest at the most logical branch
 pull_submodules: