[Gs-devel] CVS code has been broken (won't compile) since 1/29!

luke.kendall at cisra.canon.com.au luke.kendall at cisra.canon.com.au
Wed Feb 6 19:49:14 PST 2002


On  7 Feb, Igor V. Melichev wrote:
>  > If you committed this file from a different machine than your usual one, 
>  > perhaps you didn't configure the CVS client on that machine to do the EOL 
>  > conversion. 
>   
>  I did an additional analysis. 
>  In my desktop computer an older Cygwin cvs converts line breaks to 0D0A. 
>  In my laptop a younger Cygwin does not, in contradiction to its 
>  documentation 
>  http://cygwin.com/cygwin-ug-net/using-textbinary.html , and I believe it's a 
>  bug in Cygwin. 
>  Perhaps the older version doesn't work on my laptop, and I still could not 
>  understand, why so happens. 

This conversion is a deliberate convenience feature put into cvs for to
make things easy when one repository is used for mixed platform
development (typically, Unix and Windows).

I have heard recently that the feature has been removed from cvs. 
(Where I work, this will probably be sufficient incentive to make us
stay with CVS version 1.11, if it's true.)

This is CR/LF conversion business applies when doing vanilla development
on both platforms (specifically, when using DOS command windows for
driving CVS).

Cygwin provides overlapping functionality.  You can mount a drive in
binary mode or text mode; I believe that the latter means that it will
do translations from LF -> CR/LF in a sensible way, for a carefully
chosen set of circumstances.

This means that new version of cvs used from within Cygwin, on a drive
mounted in text mode, will give the same convenience as the 1.11 and
older versions of CVS.  This has been an area of active development in
Cygwin over the last year, and the current situation is pretty good,
from what I've observed.

But in all cases, doing a checkout from one platform and a checkin from
a platform with a different line ending practice, is a recipe for
trouble.  You have to be aware of the danger, so that you avoid mixing
things up.

luke




More information about the gs-devel mailing list