public bool has_local_changes = false;
public string git_status;
public string git_diff;
+ public string ahead_or_behind = "";
public Gee.HashMap<string,bool> ignore_files;
public GitBranch currentBranch;
var r = this.git({ "status" , "--porcelain" });
this.git_status = r;
this.has_local_changes = r.length > 0;
+
+ var rs = this.git({ "status" , "-sb" });
+
+ this.ahead_or_behind = rs.contains("[ahead") ? "A" : (rs.contains("[behind") ? "B" : "");
+
+
this.git_diff = this.git({ "diff" , "HEAD", "--no-color" });
}
//if (File.exists(this.repo + '/.git/config')) {
//env.push("GITPATH=" + this.repo );
//}
-
-
+
var cfg = new SpawnConfig(this.git_working_dir , args , env);
//cfg.debug = true;
// may throw error...
var sp = new Spawn(cfg);
-
- GLib.debug( "GOT: %s" , sp.output);
+ // diff output is a bit big..
+ if (args_in[0] != "diff") {
+ GLib.debug( "GOT: %s" , sp.output);
+ }
// parse output for some commands ?
return sp.output;
}