[cvsnt] Notification when cvs "touches" a local file

Hartmut Honisch hartmut_honisch at web.de
Tue Oct 7 13:14:23 BST 2003


Community technical support mailing list was retired 2010 and replaced with a professional technical support team. For assistance please contact: Pre-sales Technical support via email to sales@march-hare.com.


I'd like to implement a better shell refresh algorithm for TortoiseCVS.
Currently, after performing a CVS operation, we simply post an "F5"
keystroke to the explorer window that TCVS was invoked from, which causes
Window Explorer to refresh overlay icons and CVS column infos for all files
visible. This has some drawbacks, e.g. F5 doesn't refresh the explorer tree,
and other Explorer windows / applications don't get notified at all.

I'd like to use "ShChangeNotify" instead to properly notify the Windows
shell when it should refresh status information for a file. Now here comes
the problem:

If a CVS command changes the attributes of a local file (ctime, read-only
flag etc.), Explorer will notice that by itself and refresh the file
information automatically. The problem is when e.g. a "cvs update" changes
only meta information in the CVS\Entries file, but doesn't touch the file
itself. There are some cases when there isn't even any console output
stating that meta information has been changed, for example:
- When I change the sticky tag for a file using "cvs update", but the actual
revision doesn't change
- When I change the ctime of a file (TCVS will show it as "modified"), and
do a "cvs update", CVS silently updates the timestamp in CVS\Entries, and
therefore the TCVS status changes back to "unmodified",

So what I would need is a list of all files for which CVS meta information
has changed during a cvs operation - or even better a list of all files for
which either meta information OR content OR file attributes have changed. Is
there a way to obtain that, or any chance that this could be implemented in
CVS?

-Hartmut



More information about the cvsnt mailing list
Download the latest CVSNT, TortosieCVS, WinCVS etc. for Windows 8 etc.
@CVSNT on Twitter   CVSNT on Facebook