[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: I¡¯d like to know 'just' the working copy was modified.

From: Stefan Küng <tortoisesvn_at_gmail.com>
Date: 2006-03-09 14:31:46 CET

On 3/9/06, ¹®È«Àç <dgiim@hanmail.net> wrote:

> hi stefan. your last assistance(http://svn.haxx.se/tsvn/archive-2006-01/0178.shtml) was very good for me.
>
>
> i finished frameworks of my project, RabbitSVN, the utility of synchorusing Subversion working copies, and then tested my project as practical sides.
> And i have a problem again.
>
> RSVN give notifications to user when there's working copy was modified.
>
> i made this feature using by 'svn status [wcpath]' options, like TSVN's 'check for modifications' dialogue.
>
> but it takes very long process time. especially, when scanning big-size working copy directory. (est. 10 secs)

Yes, we know the problem. That's why we do a big deal of caching where possible.

> meanwhile i suppose TortoiseCache.exe in the TSVN package makes this information by icon as just explorer's shell extention.
> and it takes just pretty short process time.

Not really. The TSVNCache.exe process isn't faster than a normal 'svn
st'. But it fetches the status folder by folder, with some sleep time
in between, and caches the status it gets of each file and folder.
Later, when the explorer asks for the status to draw the overlay, it
only has to get the status of that particular folder, not the whole
working copy.

> please tell me what is your solutions about this subject are: how did you solve it? how did you access to the '.svn' or '_svn' directories?
> Or did you has any other way?

We never touch the .svn directories or the contents within directly.
All operations are strictly done via the Subversion API. So we have to
use the same functions you do.

> the only think i would like know is whether the working copy was modified or not, like TortoiseSVN's shell extetion feature do.

It all depends on how reliable you need that information and how
timely. The TSVNCache.exe process isn't always reliable, and it
definitely isn't 'on time' because it can take several seconds for the
cache to update the status of a working copy. That's why e.g. the
commit dialog doesn't use the cached information.

If you want to use the information from the TSVNCache.exe process,
have a look at our sourcecode to find out how to communicate with that
process.

Stefan

--
       ___
  oo  // \\      "De Chelonian Mobile"
 (_,\/ \_/ \     TortoiseSVN
   \ \_/_\_/>    The coolest Interface to (Sub)Version Control
   /_/   \_\     http://tortoisesvn.tigris.org
Received on Thu Mar 9 14:32:51 2006

This is an archived mail posted to the TortoiseSVN Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.