When running CVS in client-server mode through rsh or ssh, I get the
following problem.

If the revision number of the file I am checking out starts with a '0'
then the timestamp of the file gets set to 'dummy timestamp'. This has
various unpleasant consequences. I have verified that this happens with
        CVSROOT=:ext:jon@mycvsserver:/home/cvs 
and with 
        CVS_RSH=ssh 
or
        CVS_RSH=ssh, 
and that it does not happen with 
        CVSROOT=/home/cvs

So remote users cannot properly check out revision 0.* files, but
local users can! 

Looking at the source, the culprit seems to be client.c, in the line:
        
        if (vn[0] == '\0' || vn[0] == '0' || vn[0] == '-')
            local_timestamp = "dummy timestamp";
        else

The first case here makes sense to me. If the client can't get a version
number then set a dummy timestamp, fair enough. I have looked at the rest
of the source, both on-line CVS books and the documentation to the cvs
client-server protocol and I cannot find any reference to the other two
cases. This leads me to think that:

  a) This is a genuine bug in client.c
  b) This is intended behaviour but not well documented (i.e. a bug in the
     documentation).

or 

  c) This is intended behaviour and I have not read the docs properly. (I
     don't like this behaviour though. Can someone educate me as to the
     reasoning behind it?)

Jon Wilson


_______________________________________________
Bug-cvs mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/bug-cvs

Reply via email to