add darcs to VCS list
[ikiwiki.git] / gitremotes
index b144909243f702d04c95822ee6ce163e73896c54..e2468814b01155f99ae7d7716851eb523e3e6220 100755 (executable)
@@ -6,7 +6,7 @@ my $error=0;
 
 open (IN, "doc/git.mdwn") || die "doc/git.mdwn: $!";
 while (<IN>) {
-       if (/^\*\s+\[\[(\w+)\]\]\s+<([^>]+)>/) {
+       if (/^\*\s+\[?\[?(\w+)(?:\|\w+)?\]?\]?\s+`([^>]+)`/) {
                # note that the remote name has to be a simple word (\w)
                # for security/sanity reasons
                my $remote=$1;
@@ -15,13 +15,19 @@ while (<IN>) {
                # 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");
-                       $error |= system("git", "remote", "add", "-f", $remote, $url);
+                       $r = system("git", "remote", "add", "-f", $remote, $url)
                }
                else {
-                       $error |= system("git", "fetch", $remote);
+                       $r = system("git", "fetch", "--no-tag", $remote);
                }
+
+               if ($r != 0) {
+                       print "$remote failed\n";
+               }
+               $error |= $r;
        }
 }
 close IN;