X-Git-Url: http://git.roojs.org/?p=gitlive;a=blobdiff_plain;f=GitRepo.vala;h=cf962d637f6ceeb3463cd3cb5161439bff09ca7f;hp=5c19f071a3ef3611529a7b8528fd4bf7e038c5f5;hb=1ca3cefd12af4ec1e3cfa3469fbcfc1afc129723;hpb=8f2e926941f05c2102697de8005d4b1954a6ea4f diff --git a/GitRepo.vala b/GitRepo.vala index 5c19f071..cf962d63 100644 --- a/GitRepo.vala +++ b/GitRepo.vala @@ -180,15 +180,67 @@ public class GitRepo : Object { return !FileUtils.test(this.gitdir + "/.gitlive-disable-autocommit" , FileTest.EXISTS); } + public void set_autocommit(bool val) + { + + var cur = this.is_autocommit(); + GLib.debug("SET auto commit : %s <= %s", val ? "ON" : "OFF", cur ? "ON" : "OFF"); + if (cur == val) { + return; // no change.. + } + if (!val) { + FileUtils.set_contents(this.gitdir + "/.gitlive-disable-autocommit" , "x"); + } else { + // it exists... + FileUtils.remove(this.gitdir + "/.gitlive-disable-autocommit" ); + } + + } public bool is_auto_branch () { return FileUtils.test(this.gitdir + "/.gitlive-enable-auto-branch" , FileTest.EXISTS); } + + public void set_auto_branch(bool val) + { + + var cur = this.is_auto_branch(); + GLib.debug("SET auto branch : %s <= %s", val ? "ON" : "OFF", cur ? "ON" : "OFF"); + + if (cur == val) { + return; // no change.. + } + if (val) { + FileUtils.set_contents(this.gitdir + "/.gitlive-enable-auto-branch" , "x"); + } else { + // it exists... + FileUtils.remove(this.gitdir + "/.gitlive-enable-auto-branch" ); + } + + } public bool is_autopush () { return !FileUtils.test(this.gitdir + "/.gitlive-disable-autopush" , FileTest.EXISTS); } + public void set_autopush(bool val) + { + + var cur = this.is_autopush(); + GLib.debug("SET auto push : %s <= %s", val ? "ON" : "OFF", cur ? "ON" : "OFF"); + if (cur == val) { + return; // no change.. + } + if (!val) { + FileUtils.set_contents(this.gitdir + "/.gitlive-disable-autopush" , ""); + } else { + // it exists... + FileUtils.remove(this.gitdir + "/.gitlive-disable-autopush" ); + } + + } + + Gee.HashMap branches; @@ -338,7 +390,7 @@ public class GitRepo : Object } return false; } - + public void loadActiveTicket() { this.activeTicket = null; @@ -350,14 +402,14 @@ public class GitRepo : Object if (ticket_id.length < 1) { return; } - this.activeTicket = RooTicket.singleton().getById(ticket_id); + this.activeTicket = RooTicket.singleton().getById(ticket_id.strip()); } - public bool setActiveTicket(RooTicket ticket, string branchname) + public bool setActiveTicket(RooTicket? ticket, string branchname) { if (!this.createBranchNamed(branchname)) { return false; @@ -426,10 +478,10 @@ public class GitRepo : Object string[] cmd = { "checkout", "-b" , branchname }; this.git(cmd); - this.push(); - cmd = { "branch", "--set-upstream-to=origin/"+branchname , branchname }; + + cmd = { "push", "-u" , "origin" ,"HEAD" }; this.git(cmd); - + } catch(Error ee) { GitMonitor.gitmonitor.pauseError(ee.message); return false; @@ -612,7 +664,7 @@ public class GitRepo : Object public string push () throws Error, SpawnError { // should - return this.git({ "push", "--all" }); + return this.git({ "push" }); }