We have a large number of programmers on different platforms using CVS.
Developers have windows with TortoiseCVS (which uses cvsNT)
Developers have ubuntu 8.04
We have developers who have two boxes of Ubuntu and windows.
A wide range of different editors are used by various developers on different platforms.
And we have huge problems with line endings. This is manifested in a constant increase in the number of line endings in files.
Now, as I understand it, TortoiseCVS uses cvsNT, which assumes the end of UNIX lines in the repository. When you check, it converts the UNIX line ending before the Windows line endings, and when you do it, it converts the Windows line endings back to UNIX line endings.
In ubuntu, cvs clients do not do conversions, since the repository must be a UNIX line ending, and linux also uses a UNIX line ending.
All this works fine if each of the windows uses the cvsNT client. And no one is switching their OS.
Unfortunately, people with Ubuntu and Windows mailboxes often switch and can check, edit or make transactions on different operating systems.
And as a result, they finish writing the file using the CVS linux client, which has Windows line endings.
When this is exposed using the cvsNT client in windows, the CRLF is converted to CRCRLF, which displays as two lines. The more times this happens, the more new lines appear in the file.
CVS linux Windows UNIX , . , CVS UNIX.
.