[cvsnt] Re: setting dates of checked out files (touch)

Tony Hoyle tmh at nodomain.org
Sat Mar 6 10:40:46 GMT 2004


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.


Arthur Barrett wrote:

 > Either way having all the timestamps set to the checkout time REALLY 
breaks
 > makde, and as long as the checkins are reasonably atomic (ie: I dont go
 > changing and then committing everything) which it is usually for us 
then the
 > checkin time will be more helpful.

Essentially when you update if a file is changed it is modified and the
time is guaranteed to be newer than the last build...  if you set them
to the last checkin time then the build may not be complete (in complex
builds it will almost certainly not be) - that's difficult to diagnose
especially for a new user who may not be expecting it.

eg:

You have file1.c, which you compile at 10:30 and it generates file1.o
..however at 10:25 someone checked in new revision and you later realize
this and update.  file1.c gets the 10:25 timestamp... however file1.o
still has a 10:30 timestamp.  This means that make will not build the
new file1.o, and your application will break unexpectedly.

This has been asked before... eg
http://groups.google.com/groups?threadm=mailman.1010448907.19640.info-cvs%40gnu.org

I'm not sure how setting the timestamps to checkout time could break
make.. can you give an example?

 > None of my checkouts seem to have a CVS/Entries.Extra file.  Is this a
 > recent CVSNT enhancement?  I'd like this to be a switch on CVS itself 
- but
 > I suppose if a "client side trigger" is available to update the files 
each
 > time they are checked out or updated then I could use that - but I dont
 > think there is - arent all the "triggers" server side?

It's been around for a little while... it was added so that WinCVS could
eventually show the last checkout time in local time rather than using
the time in CVS/Entries which is in GMT and not very useful.

 > If some part of CVSNT is already putting the info into CVS/Entries.Extra
 > then I assume it'll be easy for me to hack a "if option blah is set then
 > touch the file with this time" sort of thing.  Rather than me going at it
 > hammer and tongs - can you suggest what I need to look for?

Not sure... I guess if checkout already does it (and checkout/update are
essentially identical operations) there's probably already a flag somewhere.

 > I also note that CVSNT doesnt compile with Visual Studio 6 anymore and
 > Visual Studio .NET 2002 doesnt like the .sln file at all - so I assume I
 > need to finally get around to installing VS .NET 2003?
 >
The only difference between 2002 and 2003 files is the version number...
  There's a program to convert between them:

http://www.codeproject.com/macro/vsconvert.asp

Tony





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