[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