sync
[gitlive] / GitRepo.vala
index 034d535..0a50944 100644 (file)
@@ -179,6 +179,11 @@ public class GitRepo : Object
     {
        return !FileUtils.test(this.gitdir + "/.gitlive-disable-autocommit" , FileTest.EXISTS);
     }
+    
+    public bool is_auto_branch ()
+    {
+       return FileUtils.test(this.gitdir + "/.gitlive-enable-auto-branch" , FileTest.EXISTS);
+    }
     public bool is_autopush ()
     {
        return !FileUtils.test(this.gitdir + "/.gitlive-disable-autopush" , FileTest.EXISTS);
@@ -339,7 +344,11 @@ public class GitRepo : Object
        if (!this.createBranchNamed(branchname)) {
                return false;
                }
-       FileUtils.set_contents(this.gitdir + "/.gitlive-active-ticket" , ticket.id);
+               if (ticket != null) {
+               FileUtils.set_contents(this.gitdir + "/.gitlive-active-ticket" , ticket.id);
+       } else {
+               FileUtils.remove(this.gitdir + "/.gitlive-active-ticket" );
+       }
        this.activeTicket = ticket;
        return true;
     }
@@ -364,15 +373,16 @@ public class GitRepo : Object
                                  } catch(Error e) {
                                                GitMonitor.gitmonitor.pauseError(e.message);
                                                return false;           
-                               
                                  }
                                  try {
                                           if (branchname != "master") {
                                               string[] cmd = { "merge", "master"  };
                                                    this.git(cmd);
-                                              cmd = { "commit",   "-a" , "-m",  commit_message };
-                                      this.git( cmd );
+                                                   this.push();
+                                              //cmd = { "commit",   "-a" , "-m",  "merge master changes" };
+                                      //git chethis.git( cmd );
                                            }
+                                           
                                   } catch(Error e) {
                                            string[] cmd = { "checkout", "master"  };
                                            this.git(cmd);
@@ -398,8 +408,10 @@ public class GitRepo : Object
                                           
                                        string[] cmd = { "checkout", "-b" , branchname  };
                                        this.git(cmd);
-                                       
                        this.push();    
+                       cmd = { "branch", "--set-upstream-to=origin/"+branchname , branchname  };
+                                       this.git(cmd);
+                       
                                        } catch(Error ee) {
                                                GitMonitor.gitmonitor.pauseError(ee.message);
                                                return false;           
@@ -418,7 +430,7 @@ public class GitRepo : Object
        
         
         this.loadBranches(); // update branch list...
-        GitMonitor.gitmonitor.runQueue(); // commit any outstanding...
+        //GitMonitor.gitmonitor.runQueue(); // no point - we have hidden the queue..
         return true;
     }