sync-all: die for real when required repo is missing
authorThomas Miedema <thomasmiedema@gmail.com>
Tue, 17 Jun 2014 16:25:33 +0000 (18:25 +0200)
committerThomas Miedema <thomasmiedema@gmail.com>
Mon, 23 Jun 2014 14:04:16 +0000 (16:04 +0200)
Since commit 0e17d4, the default "tag" is "-", not "". It is never
undefined.

sync-all

index 7b9d220..d60e5c9 100755 (executable)
--- a/sync-all
+++ b/sync-all
@@ -340,10 +340,6 @@ sub gitall {
         if ($command eq "get") {
             next if $remotepath eq "-"; # "git submodule init/update" will get this later
 
         if ($command eq "get") {
             next if $remotepath eq "-"; # "git submodule init/update" will get this later
 
-            # Skip any repositories we have not included the tag for
-            if (not defined($tags{$tag})) {
-                $tags{$tag} = 0;
-            }
             if ($tags{$tag} == 0) {
                 next;
             }
             if ($tags{$tag} == 0) {
                 next;
             }
@@ -366,8 +362,8 @@ sub gitall {
 
         my $git_repo_present = 1 if -e "$localpath/.git" || ($bare_flag && -d "$localpath");
         if (not $git_repo_present) {
 
         my $git_repo_present = 1 if -e "$localpath/.git" || ($bare_flag && -d "$localpath");
         if (not $git_repo_present) {
-            if ($tag eq "") {
-                die "Required repo $localpath is missing";
+            if ($tag eq "-") {
+                die "Required repo $localpath is missing. Please first run './sync-all get'.\n";
             }
             else {
                  message "== $localpath repo not present; skipping";
             }
             else {
                  message "== $localpath repo not present; skipping";