git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] submodule update - don't run git-fetch if sha1 available
@ 2007-08-11 17:48 Torgil Svensson
  2007-08-11 18:23 ` Torgil Svensson
  2007-08-11 19:44 ` Junio C Hamano
  0 siblings, 2 replies; 7+ messages in thread
From: Torgil Svensson @ 2007-08-11 17:48 UTC (permalink / raw)
  To: Git Mailing List

It's un-necessary (both time-consuming and annoying if you are
disconnected) for git submodule update to always running git-fetch
prior to the detached head checkout of the submodule if the commit
already exists.

Signed-off-by: Torgil Svensson <torgil.svensson@gmail.com>
---
 git-submodule.sh |    9 +++++++--
 1 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/git-submodule.sh b/git-submodule.sh
index 2cfeadd..dc2ed4b 100755
--- a/git-submodule.sh
+++ b/git-submodule.sh
@@ -39,6 +39,11 @@ get_repo_base() {
        ) 2>/dev/null
 }

+has_sha1()
+{
+       git rev-list 2>/dev/null --max-count=0 $1
+}
+
 #
 # Map submodule path to submodule name
 #
@@ -193,9 +198,9 @@ modules_update()

                if test "$subsha1" != "$sha1"
                then
-                       (unset GIT_DIR && cd "$path" && git-fetch &&
+                       (unset GIT_DIR && cd "$path" && (has_sha1
"$sha1" || git-fetch) &&
                                git-checkout -q "$sha1") ||
-                       die "Unable to checkout '$sha1' in submodule
path '$path'"
+                       die "Unable to checkout '$sha1' in submodule
path '$path'"

                        say "Submodule path '$path': checked out '$sha1'"
                fi
--
1.5.3.rc4.730.ga8c3-dirty

^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2007-08-19 20:56 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-08-11 17:48 [PATCH] submodule update - don't run git-fetch if sha1 available Torgil Svensson
2007-08-11 18:23 ` Torgil Svensson
2007-08-11 19:44 ` Junio C Hamano
2007-08-12  0:03   ` Torgil Svensson
2007-08-12  1:19     ` Junio C Hamano
2007-08-19 18:57       ` Torgil Svensson
2007-08-19 20:56         ` Junio C Hamano

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).