CVS is a Scheming Mistress
I found out something today. CVS is annoying. More specifically, the way it handles line endings is annoying. Hopefully my research will help you...
<Begin Technical Discussion>
To CVS, the canonical line ending format is a single LF (\n). It stores all of its non-binary files in the repository with LF as the line ending. When CVS wants to check out a file from the repository, it converts the line endings from a single LF to whatever the native line ending for the platform is. On UNIX, this is a single LF, which means no translation. On Windows, the line ending happens to be CRLF (\r\n). After checking in a file, CVS converts the endings back to the canonical format. Seems okay so far, right?
Well what if a file in the repository ends up with CRLF line endings? If you try to check out that file on Windows, it sees the LF and says "Oh, it's UNIX format! We need to convert it to CRLF!" So really, you end up with CRCRLF (confusing your poor Windows text editors) line endings in your working copy files. Normally, you wouldn't end up with CRLF line endings in the repository, unless you, oh, happen to be using Cygwin with drives mounted in binary mode... You see, CVS thinks Cygwin is UNIX (which it sort of is), and doesn't do any line ending translations on the files. However, if you're running Windows, you'll probably always be making files that end up with CRLF line endings, so you definitely WANT CVS to do some sort of line ending translation!
<End Technical Discussion>
Moral of the story: When using CVS in Cygwin, mount your drives as textmode instead of binmode in the installer. (Select DOS text file type.) It'll save you a lot of pain.
I'm using a computer at work called MARYJO. It's a 2.66 GHz P4 with 1 GB of RAM, running Windows XP. Man, is it snappy! Even on something this fast you can really feel the difference in speed between Windows XP and Red Hat 8.0. Unfortunately, after using it, I'm afraid to go back to my P2 400 at home.
I can now go to sleep! There are FINALLY 99 (not 10, 6, or 4) counties in Iowa!
Good thing I make all my files native unix format in cygwin...
Or you could just fix the file: sed -e 's/^M^M/^M/g' brokenfile > tmp && mv tmp brokenfile
Thanks for the info, I'll keep it in mind!
I'll have you know that the technical discussion continued for one line after you said it would! You hurt my brain, you liar!
well...I didn't get the technical discussion...but I'm glad to hear that you gpt 99 counties in Iowa...and not just 4, 6 or 10!
Actually, there might be 96 now... :( I don't know why. I wish I did.
aww!! that's too bad!!
Now I finally understand what the hell was up with checking sphere out of CVS. ^_^