bug-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: cvs commit problem


From: Warren Dodge
Subject: Re: cvs commit problem
Date: Mon, 19 Oct 2009 17:20:24 -0700

I was wondering if it would be practical to put a switch in cvs that
would skip the timestamp check and go ahead and assume that it was
different and perform the requested oepration.

It would be handy in cases where cvs was being used in scripts. You
could eliminate the 1 second sleep which could cause a significant time
waste.

Perhaps a few words about this issue in the manual would help users who
trip on this. 


>  Date: Thu, 15 Oct 2009 00:45:19 -0400
>  CC: <bug-cvs@nongnu.org>
>  From: Larry Jones <lawrence.jones@siemens.com>
>  MIME-Version: 1.0
>  Content-Type: text/plain; charset="us-ascii"
>  
>  Warren Dodge writes:
>  > 
>  > I assume I have stepped into a time resolution problem that you normally
>  > would not see when typing the commands.
>  
>  Correct.  CVS assumes that the file hasn't changed if its modification
>  time hasn't changed.  On most Unix-like systems, the mod time resolution
>  is 1 sec.
>  -- 
>  Larry Jones
>  
>  At times like these, all Mom can think of is how long she was in
>  labor with me. -- Calvin
>  
>  
>> 
>> Recently I am getting a problem where I modify a file and try to commit
>> it and it will not commit. If I do a cvs diff it says there is no
>> difference.
>> 
>> Yet, if I move the file aside and do an update and then diff the two
>> files they are different.
>> 
>> It is a bit of a strange application but it is what we needed.
>> 
>> I am using a script to update the file. The sequence I was doing in the
>> perl script is this:
>> 
>> rm file
>> cvs up file
>> read in file
>> modify data
>> write out file
>> cvs commit file
>> 
>> I found that if I do this it works properly
>> 
>> rm file
>> cvs up file
>> sleep 1
>> read in file
>> modify data
>> write out file
>> cvs commit file
>> 
>> 
>> When it fails I do this
>> 
>>  cvs -t diff x
>>  -> main loop with CVSROOT=/proj/lapl/sentinel/CVS_repository
>>  -> Reader_Lock(/proj/lapl/sentinel/CVS_repository/tank/include)
>>  -> Lock_Cleanup()
>>  -> Lock_Cleanup()
>> 
>> If I touch the file
>> 
>> cvs -t diff x
>>  -> main loop with CVSROOT=/proj/lapl/sentinel/CVS_repository
>>  -> Reader_Lock(/proj/lapl/sentinel/CVS_repository/tank/include)
>>  -> RCS_checkout (/proj/lapl/sentinel/CVS_repository/tank/include/x,v, 
>> 1.122, , , (function))
>> Index: x
>> ===================================================================
>> RCS file: /proj/lapl/sentinel/CVS_repository/tank/include/x,v
>> retrieving revision 1.122
>>  -> RCS_checkout (/proj/lapl/sentinel/CVS_repository/tank/include/x,v, 
>> 1.122, , , /tmp/cvsn1kC6E)
>> diff -r1.122 x
>> 1c1
>> < `define TANK_VON_RON 123
>> ---
>> > `define TANK_VON_RON 124
>>  -> Lock_Cleanup()
>>  -> Lock_Cleanup()
>> 
>> 
>> I assume I have stepped into a time resolution problem that you normally
>> would not see when typing the commands.
>> 
>> 





reply via email to

[Prev in Thread] Current Thread [Next in Thread]