projects
/
gitlive
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
3c6e767
)
Uncommited changes synced
wip_alan_T5633_gitlive_preview_diff_before_merge
author
Alan Knowles
<alan@roojs.com>
Fri, 28 Dec 2018 07:21:40 +0000
(15:21 +0800)
committer
Alan Knowles
<alan@roojs.com>
Fri, 28 Dec 2018 07:21:40 +0000
(15:21 +0800)
GitRepo.vala
patch
|
blob
|
history
diff --git
a/GitRepo.vala
b/GitRepo.vala
index
7163c97
..
08b3824
100644
(file)
--- a/
GitRepo.vala
+++ b/
GitRepo.vala
@@
-303,7
+303,16
@@
public class GitRepo : Object
}
}
-
+ public bool hasBranchCalled(string name)
+ {
+ foreach( var br in this.branches.values) {
+ if (br.name == name) {
+ return true;
+ }
+
+ }
+ return false;
+ }
public string branchesToString()
{
public string branchesToString()
{
@@
-347,12
+356,14
@@
public class GitRepo : Object
{
// in theory we should check to see if other repo's have got the same branch and merge all them at the same time.
// also need to decide which branch we will merge into?
{
// in theory we should check to see if other repo's have got the same branch and merge all them at the same time.
// also need to decide which branch we will merge into?
+ var master = this.hasBranchCalled("roojs") ? "roojs" : "master";
+
var ret = "";
if (action == "CLOSE" || action == "LEAVE") {
try {
var oldbranch = this.currentBranch.name;
var ret = "";
if (action == "CLOSE" || action == "LEAVE") {
try {
var oldbranch = this.currentBranch.name;
- this.setActiveTicket(null,
"master"
);
+ this.setActiveTicket(null,
master
);
string [] cmd = { "merge", "--squash", oldbranch };
this.git( cmd );
cmd = { "commit", "-a" , "-m", commit_message };
string [] cmd = { "merge", "--squash", oldbranch };
this.git( cmd );
cmd = { "commit", "-a" , "-m", commit_message };
@@
-361,7
+372,7
@@
public class GitRepo : Object
this.loadBranches(); // updates lastrev..
var notification = new Notify.Notification(
this.loadBranches(); // updates lastrev..
var notification = new Notify.Notification(
- "Merged branch %s to
master".printf(oldbranch
),
+ "Merged branch %s to
%s".printf(oldbranch, master
),
"",
"dialog-information"
"",
"dialog-information"
@@
-384,10
+395,10
@@
public class GitRepo : Object
if (action == "MASTER") {
// merge master into ours..
try {
if (action == "MASTER") {
// merge master into ours..
try {
- string[] cmd = { "merge",
"master"
};
+ string[] cmd = { "merge",
master
};
this.git( cmd );
var notification = new Notify.Notification(
this.git( cmd );
var notification = new Notify.Notification(
- "Merged code from
master to %s".printf(
this.currentBranch.name),
+ "Merged code from
%s to %s".printf(master,
this.currentBranch.name),
"",
"dialog-information"
"",
"dialog-information"
@@
-404,7
+415,7
@@
public class GitRepo : Object
if (action == "EXIT") {
try {
var oldbranch = this.currentBranch.name;
if (action == "EXIT") {
try {
var oldbranch = this.currentBranch.name;
- this.setActiveTicket(null,
"master"
);
+ this.setActiveTicket(null,
master
);
this.loadBranches();
var notification = new Notify.Notification(
"Left branch %s".printf(oldbranch),
this.loadBranches();
var notification = new Notify.Notification(
"Left branch %s".printf(oldbranch),
@@
-481,8
+492,9
@@
public class GitRepo : Object
}
bool switchToExistingBranchNamed(string branchname)
{
}
bool switchToExistingBranchNamed(string branchname)
{
+ var master = this.hasBranchCalled("roojs") ? "roojs" : "master";
var stash = false;
var stash = false;
-
// this is where it get's tricky...
+ // this is where it get's tricky...
string files = "";
try {
string[] cmd = { "ls-files" , "-m" }; // list the modified files..
string files = "";
try {
string[] cmd = { "ls-files" , "-m" }; // list the modified files..
@@
-502,15
+514,15
@@
public class GitRepo : Object
return false;
}
try {
return false;
}
try {
- if (branchname !=
"master"
) {
- string[] cmd = { "merge",
"master"
};
+ if (branchname !=
master
) {
+ string[] cmd = { "merge",
master
};
this.git(cmd);
this.push();
}
} catch(Error e) {
this.git(cmd);
this.push();
}
} catch(Error e) {
- string[] cmd = { "checkout",
"master"
};
+ string[] cmd = { "checkout",
master
};
this.git(cmd);
GitMonitor.gitmonitor.pauseError(
"Use\n\na) git checkout %s\nb) git mergetool\nc) git commit\nd) git push\n d) stash pop \ne) start gitlive again\n".printf(
this.git(cmd);
GitMonitor.gitmonitor.pauseError(
"Use\n\na) git checkout %s\nb) git mergetool\nc) git commit\nd) git push\n d) stash pop \ne) start gitlive again\n".printf(
@@
-599,8
+611,9
@@
public class GitRepo : Object
public string previewMerge()
{
try {
public string previewMerge()
{
try {
- var lines = this.git({"log", "master...", "--pretty=format:\"%H %P\"" }).split("\n");;
- var head = this.git({"log", "-1", "--pretty=format:\"%H %P\"" });
+ var master = this.hasBranchCalled("roojs") ? "roojs" : "master";
+ var lines = this.git({"log", master + "...", "--pretty=format:%H %P" }).split("\n");;
+ var head = this.git({"log", "-1", "--pretty=format:%H %P" });
var start = head.split(" ")[0];
var end = "";
for (var i = 0; i < lines.length; i++) {
var start = head.split(" ")[0];
var end = "";
for (var i = 0; i < lines.length; i++) {
@@
-615,7
+628,7
@@
public class GitRepo : Object
end = last.split(" ")[1];
}
end = last.split(" ")[1];
}
- return this.git({ "diff" ,
start+".."+end
, "--no-color" });
+ return this.git({ "diff" ,
(end+".."+start)
, "--no-color" });
} catch(Error ee) {
GitMonitor.gitmonitor.pauseError(ee.message);
return "Error getting diff";
} catch(Error ee) {
GitMonitor.gitmonitor.pauseError(ee.message);
return "Error getting diff";