[webkit-dev] sln files with wrong line endings

Osztrogonác Csaba oszi at inf.u-szeged.hu
Thu Feb 14 08:39:56 PST 2013


Hi All,

Here is an old bug report about it:
Files with CRLF lineendigs without svn:eol-style=native kills git svn 
repositories
https://bugs.webkit.org/show_bug.cgi?id=96934

The general fix would be to force all Windows project file have
svn:eol-style=native svn property. git-svn users who commit this
files can do it automatically inside: ~/.subversion/config
*.vsprops = svn:eol-style=native
*.vcproj = svn:eol-style=native

But we should force all developers to set it somehow.
There is a working solution for png files: 
https://trac.webkit.org/changeset/122311

It force commit svn:mime-type image/png svn property for SVN users
and warn GIT-SVN users if they didn't set their ~/.subversion/config
properly. I think a volunteer can do a similar thing for Windows
project files.

Ossy

Adam Roben írta:
> 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.
> 
> -Adam



More information about the webkit-dev mailing list