'fetch' and 'new' can take branch names as arguments (defaulting to 'origin')
authorSimon Marlow <marlowsd@gmail.com>
Tue, 5 Apr 2011 10:08:35 +0000 (11:08 +0100)
committerSimon Marlow <marlowsd@gmail.com>
Tue, 5 Apr 2011 11:20:06 +0000 (12:20 +0100)
e.g.

   ./sync-all -r ~/git/ghc-working remote add working
   ./sync-all fetch working

sync-all

index e4cb40e..2f47974 100755 (executable)
--- a/sync-all
+++ b/sync-all
@@ -238,6 +238,12 @@ sub scmall {
         if ($subcommand ne 'add' && $subcommand ne 'rm') {
             help();
         }
+    } elsif ($command eq 'new' || $command eq 'fetch') {
+        if (@_ < 1) {
+            $branch_name = 'origin';
+        } else {
+            $branch_name = shift;
+        }
     }
 
     for $line (@packages) {
@@ -316,10 +322,10 @@ sub scmall {
                 @scm_args = ("remote", "set-url", "--push", "origin", $path);
             }
             elsif ($command =~ /^fetch$/) {
-                @scm_args = ("fetch", "origin");
+                @scm_args = ("fetch", "$branch_name");
             }
             elsif ($command =~ /^new$/) {
-                @scm_args = ("log", "origin..");
+                @scm_args = ("log", "$branch_name..");
             }
             elsif ($command =~ /^remote$/) {
                 if ($subcommand eq 'add') {