[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Disabling automatic setting of svn:executable property

From: Nico Kadel-Garcia <nkadel_at_gmail.com>
Date: Mon, 30 May 2011 23:58:30 -0400

On Mon, May 30, 2011 at 2:43 PM, Ryan Schmidt
<subversion-2011a_at_ryandesign.com> wrote:
>
> On May 30, 2011, at 11:26, Nico Kadel-Garcia wrote:
>
>> There's a potential risk with the approach: CygWin uses UNIX
>> compatible end-of-line characters. TortoiseSVN, and other Windows
>> based clients, use Windows end-of-line. The result can be *CHAOS* if
>> you typically set source files, such as .html, .php, or .c, .sh, or
>> .pl files, to use "svn:eol-stile", or expect files to be automatically
>> set in Windows or UNIX style as you switch from programming from a
>> source repository in Windows, and one in CygWin.
>
> *Not* setting svn:eol-style to some value will lead to chaos, as you use different editors with different ideas of what a line ending is, and you start getting files with inconsistent line endings. *Setting* svn:eol-style to some value should prevent said chaos, by

Then the editor, or practice of the developer, is fractured. In this
day of shared network based file systems and replication of developed
components via NFS, CIFS, SCP, and HTTP download, it is a dangerous
presumption that the EOL can be reset on a client system by client
system basis. CygWin is the best example of this: files checked out
and replicated with the CygWin based SVN will have one EOL for such
"clever" approaches, checked out with TortoiseSVN will have another.
The configured EOL approach to this which Subversion supports, as an
option, is hideously dangerous in such environments.

There are a few cases where OS specific EOL is useful, but they're
rare. Markup languages have a standard EOL written in: so does C,
Perl, Ruby, Java, and all the other programming languages. It's only
really useful in poorly implemented configuration files which weren't
written with such a standard, and certain forms of stored text files,
and most editors and display tools can use those just fine. (Wordpad
versus Notepad, for example, works well for the Windows users.)

I've actually seen this play out in C++ and Java and PHP and HTML in
the last.... 5 years. People checking out repositories on one OS to a
shared network directory, such as their Windows box with TortoiseSVN
for the superior interface, were alarmed to find the code mangled when
they did work with C, or replicated files and tried to import them
elsewhere *without* the same EOL settings. Chaos ensued repeatedly.
Received on 2011-05-31 05:59:13 CEST

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.