Home » Developing U++ » UppHub » usvn - SVN for dummies (and me)
Re: usvn - SVN for dummies (and me) [message #26328 is a reply to message #26234] |
Sun, 25 April 2010 11:29   |
|
ktj9 wrote on Fri, 16 April 2010 06:31 | Having been playing with it for a day. Very handy! Just need a "Skip" functionality, so I can skip those I don't want to commit.
To do that, hacks that I made are:
Change to this in SvnSync ctor
list.ColumnWidths("220 500 100");
Change to this in SvnSync::SyncList()
list.SetCtrl(ii, 0, revert.Add().SetLabel("Revert\n" + an + "\nSkip").NoWantFocus());
Change to this in SvnSync::DoSync()
bool commit = false;
while(l < list.GetCount()) {
SvnWork w = works[repoi++];
l++;
String message;
Value v0 = list.Get(l, 2);
if (IsNumber(v0) && (int)v0==2){
continue;
}
|
Hi kjt9!
Sorry it took so long before anyone respond... I guess nobody noticed your post because it is in rather old thread.
I fully agree that ability to skip files in usvn would be very helpful. I am the kind of person who works on several things at the same time, so I am dealing with it all the time. I tested the code changes you proposed. Unfortunately the patch you propose is not working correctly in some cases. It is fine for adding and deleting files, but when it comes to modifications, it was skipping everything.
So while I was debugging your code, I actually wrote my own patch. I kept the first two snipets (the UI stuff), but the changed part of Svn::DoSync() should look like this: ...
bool commit = false;
while(l < list.GetCount()) {
SvnWork w = works[repoi++];
l++;
String message;
String filelist;
while(l < list.GetCount()) {
int action = list.Get(l, 0);
String path = list.Get(l, 1);
if(action == MESSAGE && commit) {
String msg = list.Get(l, 3);
if(sys.CheckSystem(SvnCmd("commit", w).Cat() << filelist << " -m \"" << msg << "\""))
msgmap.GetAdd(w.working) = msg;
l++;
break;
}
if(action == REPOSITORY)
break;
Value v = list.Get(l, 2);
if(IsNumber(v) && (int)v == 0) {
if(action == REPLACE || action == ADD)
DeleteFolderDeep(path);
if(action != ADD)
sys.CheckSystem("svn revert " + path);
}else if(IsNumber(v)&&(int)v==2){
l++;
continue;
}
else {
...
I hope this time someone notices this post ... and possibly applies the patch.
Best regards
Honza
|
|
|
Goto Forum:
Current Time: Mon Aug 25 06:14:44 CEST 2025
Total time taken to generate the page: 0.05814 seconds
|