[webkit-dev] sln files with wrong line endings

Adam Roben aroben at webkit.org
Thu Feb 14 08:30:34 PST 2013

I'm pretty sure r142864 fixed this (perhaps unintentionally) by
changing all line endings in DumpRenderTree.sln from CRLF to LF.

On Thu, Feb 14, 2013 at 11:11 AM, Darin Adler <darin at apple.com> wrote:
> Typically in Subversion the fix for a problem like this is to set the eol-style explicitly; presumably to CRLF for Windows project and solution files and to LF or native for plain old source files. Once that property is set, people changing file later on can’t cause problems with inconsistent line endings, because Subversion will check the line endings at commit time.
> I have no idea how having git in the mix affects this.

WebKit's .gitattributes file contains the following:

*.vcproj eol=crlf
*.vsprops eol=crlf
*.sln eol=crlf

This tells git, "When storing this file in the repository, convert all
line endings to LF. When checking out this file to disk, convert all
line endings to CRLF."

If the committed version of the file in the repository contains CRLF
line endings, git will show a diff that converts the CRLF line endings
to LF. eol=crlf means that the line endings *in the repository* should
be LF, so git is trying to fix it.

I think the thing to do is to set svn:eol-style to "native" for all
.vcproj, .vsprops, and .sln files. That way Subversion will commit the
files using LF line endings (like git wants), and check them out using
CRLF on Windows (like Visual Studio wants).

> In fact, I don’t know how to set a Subversion property using git-svn which means I can’t easily just jump in and fix this like I would have in the past.

I don't think git-svn can set properties. When I've had to change
properties in the past I've checked out the appropriate subset of
WebKit using Subversion and made my changes there.


More information about the webkit-dev mailing list