Thread (12 messages) flat view 12 messages, 6 authors, 2016-06-15

Re: [PATCH 2/2] checkout: fix attribute handling in checkout all

From: Steffen Prohaska <hidden>
Date: 2016-06-15 22:43:29

On Aug 13, 2007, at 10:39 AM, Marius Storm-Olsen wrote:
Steffen Prohaska said the following on 13.08.2007 09:32:
quoted
On Aug 13, 2007, at 9:15 AM, Marius Storm-Olsen wrote:
quoted
Steffen Prohaska said the following on 13.08.2007 08:50:
quoted
We should really make autocrlf = true the default for us and
fix all problems that we'll encounter. There may be more tricky
stuff ahead, like merges, cherry-picks, ...
I'm more leaning towards having the installer give you the option
 to choose what kind of line-endings you want Git to work with;
just like the Cygwin installer.
Which is the root of much trouble with Cygwin. People now say, git
works perfectly in Cygwin but forget to mention that they mean
Cygwin A (in binmode) but not Cygwin B (in textmode).
Better choose the right default and work hard to make the default
choice work perfectly. I am strongly against an option in the
installer. An option _will_ cause confusion. Better give people a
hint how they can override the default for a single user, or for a
single repo. Then they recognize that they move to a non-default
configuration and hopefully think twice. And we never need to talk
about msysgit A vs. msysgit B, but only about msysgit with repo
specific or user specific options.
For me, the question comes down to the following: What would the  
average Windows user (real Windows user, not Linux user who was  
forced to work in Cygwin!) expect git to do with line endings? The
answer to this question should be the default.
If we were talking about a huge amount (real) Windows users I would  
agree with you. However, currently most of the users using Git on  
Windows are Unix users which for some reason have to work on  
Windows every now and then. And changing the default option to  
autocrlf=true would be stepping on their toes, which we probably  
don't want to do :-)
My target audience of Git on Windows are Windows users and, frankly,
that is the only reasonable way to think about Windows. Why else should
I boot Windows, if I don't have real Windows users in mind? I mean,
Windows is not the superior platform to build Unix on top. The reason
to boot Windows is Windows itself, including its real users.

I'm a Windows developer myself, so I naturally have autocrlf=true  
in my global settings. I don't think having the option in the  
installer (together with other things, like setting the global  
username, and email for example) would be such a bad thing. The  
problem with the way the Cygwin installer presents it is that it  
doesn't explain the pros and cons of the two options; it just  
recommends Linux EOL, which leads to confusion with some Windows  
developers.
The problem is that Cygwin doesn't really support textmode. It
offers a choice, where there is no choice. After selecting textmode,
I still can install git. But git doesn't work.

If we properly explain the issue in the installer, and say we  
recommend Windows EOL for Windows developers, I think it's OK. It  
would in any case be better than the current state where you have  
no option, or stepping on all the current msysgit/mingw-git  
maintainers toes.
Maybe I don't fully understand what msysgit is about. I thought it would
be about real Windows support, which I think requires to accept what
Windows users expect to be the right thing: Windows EOL.

In the long run it will also be easier for us, because other Windows
tools expect Windows EOL. I'm pretty sure that git plays better on
Windows if it has Window EOL on by default.

	Steffen
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help