]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blobdiff - gitremotes
Correctly handle filenames starting with a dash in add/rm/mv.
[git.ikiwiki.info.git] / gitremotes
index e2468814b01155f99ae7d7716851eb523e3e6220..5cafad1b8dcb550c694567b7815978a7861fc6fe 100755 (executable)
@@ -1,8 +1,7 @@
 #!/usr/bin/perl
 # Parses list of remotes in doc/git.mdwn, configures git to use them
 #!/usr/bin/perl
 # Parses list of remotes in doc/git.mdwn, configures git to use them
-# all, and fetches updates from them.
-
-my $error=0;
+# all. After running this, use "git remote update --prune" to pull
+# updates from all remotes.
 
 open (IN, "doc/git.mdwn") || die "doc/git.mdwn: $!";
 while (<IN>) {
 
 open (IN, "doc/git.mdwn") || die "doc/git.mdwn: $!";
 while (<IN>) {
@@ -15,21 +14,13 @@ while (<IN>) {
                # check configured url to deal with it changing
                my $info=`git remote show -n $remote`;
                my ($oldurl)=$info=~/URL: (.*)/m;
                # check configured url to deal with it changing
                my $info=`git remote show -n $remote`;
                my ($oldurl)=$info=~/URL: (.*)/m;
-               my $r;
                if ($oldurl ne $url) {
                        system("git remote rm $remote 2>/dev/null");
                if ($oldurl ne $url) {
                        system("git remote rm $remote 2>/dev/null");
-                       $r = system("git", "remote", "add", "-f", $remote, $url)
-               }
-               else {
-                       $r = system("git", "fetch", "--no-tag", $remote);
+                       system("git", "remote", "add", $remote, $url);
+                       system("git", "config", "remote.$remote.tagopt",
+                               "--no-tags");
+                       system("git", "fetch", $remote);
                }
                }
-
-               if ($r != 0) {
-                       print "$remote failed\n";
-               }
-               $error |= $r;
        }
 }
 close IN;
        }
 }
 close IN;
-
-exit $error;