[cvsnt] Re: LF or CRLF?

Bo Berglund bo.berglund at telia.com
Sun Jun 29 17:55:37 BST 2003


CVS handles the line endings for you if you use cvs as designed.
This means:
1. The repository is accessed using the client/server model
2. Each developer has *his own* checked out local copy of the files
3. All communication between developers regarding files is through cvs
4. All files are committed to cvs as *text* files, not binary

When this is done then no problems at all will happen with the line
endings. Users on Windows will get their files with CRLF at each line
end, users on Linux will get the same files with only LF at the end
and I think Mac users will get the same.
If you make a cvs diff command then these line endings are not taken
into account so the diff is (as it should) only showing text changes.

If you have problems then you are doing at least one of the steps 1-4
above wrong.

/Bo


On Sat, 28 Jun 2003 23:29:03 +0200, Per Steneskog
<md94-pst at nada.kth.se> wrote:

>Hi.
>
>I have far from read through the complete news-archive and only quickly 
>went through the wiki at www.cvsnt.org. So bashing is allowed. It is 
>also possible that this question is not CVSNT-specific. If so I apology.
>
>My "problem" is that I would like to use LF (*nix-style) new-lines. I 
>have trouble getting the IDE (eclipse on Windows) to easily commit the 
>files with LF instead of CRLF. Also having trouble running diff cause of 
>different new-lines.
>
>I have heard that CVS (the server?) is intelligent to depend on the OS 
>of the CVS-client to check-out (or commit?) files with proper new-line. 
>Though my experience (not CVSNT but CVS-server at linux) is that the 
>*nix-users might get lovely ^M.
>
>Am I just dumb trying to have LF new-lines within the repository? 
>Instead, simply whenever I want to distribute to *nix, I should 
>check-out from such os? (bummer, not available). Current solution is to 
>strip CRLF->LF after check-out and then distribute.
>
>Best regards
>Per Steneskog


/Bo
(Bo Berglund, developer in Sweden)


More information about the cvsnt mailing list