Overview
Examples
Screenshots
Comparisons
Applications
Download
Documentation
Tutorials
Bazaar
Status & Roadmap
FAQ
Authors & License
Forums
Funding Ultimate++
Search on this site
Search in forums












SourceForge.net Logo
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 Go to previous messageGo to previous message
dolik.rce is currently offline  dolik.rce
Messages: 1792
Registered: August 2008
Location: Czech Republic
Ultimate Contributor

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 Smile ... and possibly applies the patch.

Best regards
Honza
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Scatter Control
Next Topic: Svg Painter
Goto Forum:
  


Current Time: Mon Aug 25 06:14:44 CEST 2025

Total time taken to generate the page: 0.05814 seconds