git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Gregory Jefferis <jefferis@gmail.com>
To: Steffen Prohaska <prohaska@zib.de>,
	Linus Torvalds <torvalds@linux-foundation.org>
Cc: Junio C Hamano <gitster@pobox.com>,
	Git Mailing List <git@vger.kernel.org>
Subject: Re: CRLF problems with Git on Win32
Date: Fri, 11 Jan 2008 19:00:40 +0000	[thread overview]
Message-ID: <C3AD6D58.10E02%jefferis@gmail.com> (raw)
In-Reply-To: <D36EB89D-11A3-4EAF-BC1C-6100383FCBFC@zib.de>

Sticking my head above the parapet again ...

On 11/1/08 16:28, "Steffen Prohaska" <prohaska@zib.de> wrote:

> I don't think the CRLF problem is a Windows vs. Unix discussion.
Agreed.
> In my view, the discussion is wether git will have real cross-
> platform support as its default or not.  The current default is
> sane for native Unix or native Windows projects.  For cross-
Absolutely
> platform projects the default needs to be changed in the way
> described above.  Git needs to ensure that CRLF never enters the
> repository for text files.

LF only repositories are model that everyone is tending towards but I feel
that there are (sane) people out there who would sometimes like to have CRLF
files in the repository and do cross-platform development (I would
developing on a Mac for a Windows originated Win/Mac project or if I were
keeping vendor source code in a tree).  In spite of the plethora of autocrlf
variants so far there is still none that on unix would give you LF->CRLF on
check in and CRLF->LF on checkout!  This should be perfectly compatible with
git's internals and I think it should be possible to allow this without
breaking anything for other situations.  One solution, which would have
other uses, would be to allow checkin conversion to a specified line ending
and checkout conversion to platform line ending as separately configurable
options.

If this seems outrageous then it should be made perfectly clear that the git
project strongly discourages CRLF text files in cross-platform repositories,
that to prevent CRLF creep we disallow them by default even in the privacy
of your own OS (if it's Windows) and that if you want to do this you're on
your own mate.  But I think that would be a shame, inflexible and definitely
not PC ;-)

> If you did not set autocrlf=true,
> copying source code from Windows to Unix would not be supported.
> But as you earlier mentioned, this seems to be a common
> operation and I am observing the same.  So I recommend
> autocrlf=input on Unix if you plan to ever go cross-platform.

For me this is kind of the mathematician vs the engineer.  I think Steffen
is logically correct in saying that autocrlf=input on unix is the direct
orthologue of autocrlf=true on windows and I dislike the idea that git
should show logically different behaviour on different platforms.  However I
think Linus's cost/benefit analysis is right: CRLF files appear infrequently
on unix system and often as not it's because someone specifically wants them
to stay that way.

So I think autocrlf=input is a useful option but not a necessary default on
unix. 

  parent reply	other threads:[~2008-01-11 19:01 UTC|newest]

Thread overview: 113+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-01-07  9:16 CRLF problems with Git on Win32 Peter Karlsson
2008-01-07  9:57 ` Steffen Prohaska
2008-01-07 10:00   ` Junio C Hamano
2008-01-07 12:15     ` Steffen Prohaska
2008-01-07 10:12   ` Jeff King
2008-01-07 18:47     ` Robin Rosenberg
2008-01-07 19:16       ` Johannes Schindelin
2008-01-07 21:03         ` Robin Rosenberg
2008-01-07 21:18           ` Johannes Schindelin
2008-01-07 21:40             ` Steffen Prohaska
     [not found]               ` <3B08AC4C-A807-4155-8AD7-DC6A6D0FE134-wjoc1KHpMeg@public.gmane.org>
2008-01-07 22:06                 ` Junio C Hamano
     [not found]                   ` <7vzlvhxpda.fsf-jO8aZxhGsIagbBziECNbOZn29agUkmeCHZ5vskTnxNA@public.gmane.org>
2008-01-07 22:58                     ` Linus Torvalds
     [not found]                       ` <alpine.LFD.1.00.0801071457040.3148-5CScLwifNT1QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org>
2008-01-07 23:46                         ` Gregory Jefferis
2008-01-08 11:09                           ` git and unicode Gonzalo Garramuño
2008-01-08 15:09                             ` Remi Vanicat
2008-01-08 20:36                             ` Robin Rosenberg
2008-01-08  8:55                         ` CRLF problems with Git on Win32 Marius Storm-Olsen
2008-01-08  7:02                     ` Steffen Prohaska
2008-01-08  7:29                       ` Junio C Hamano
2008-01-08 10:08                         ` Jeff King
2008-01-08 10:35                           ` Junio C Hamano
2008-01-08 12:20                           ` Gregory Jefferis
2008-01-08 17:29                 ` J. Bruce Fields
     [not found]                   ` <20080108172957.GG22155-uC3wQj2KruNg9hUCZPvPmw@public.gmane.org>
2008-01-08 17:56                     ` Steffen Prohaska
2008-01-08 18:07                       ` Junio C Hamano
     [not found]                         ` <7vmyrgry20.fsf-jO8aZxhGsIagbBziECNbOZn29agUkmeCHZ5vskTnxNA@public.gmane.org>
2008-01-08 18:58                           ` Steffen Prohaska
2008-01-08 19:09                             ` J. Bruce Fields
2008-01-08 19:47                               ` Junio C Hamano
     [not found]                                 ` <7vir24rtfp.fsf-jO8aZxhGsIagbBziECNbOZn29agUkmeCHZ5vskTnxNA@public.gmane.org>
2008-01-08 20:02                                   ` Steffen Prohaska
     [not found]                                     ` <B655B6FF-9377-434A-A979-2E758771B0FA-wjoc1KHpMeg@public.gmane.org>
2008-01-08 20:15                                       ` Junio C Hamano
     [not found]                                         ` <7v3at8rs4b.fsf-jO8aZxhGsIagbBziECNbOZn29agUkmeCHZ5vskTnxNA@public.gmane.org>
2008-01-08 20:39                                           ` Steffen Prohaska
2008-01-09 11:03                                       ` Johannes Schindelin
     [not found]                                         ` <alpine.LSU.1.00.0801091100401.31053-OGWIkrnhIhzN0uC3ymp8PA@public.gmane.org>
2008-01-09 12:45                                           ` Steffen Prohaska
     [not found]                                             ` <019B1C82-27BF-4B6B-981D-5498D31B5DD3-wjoc1KHpMeg@public.gmane.org>
2008-01-09 13:32                                               ` Johannes Schindelin
2008-01-08 20:41                                   ` Linus Torvalds
2008-01-09  8:03                                     ` Junio C Hamano
     [not found]                                       ` <7vd4sbmnmz.fsf-jO8aZxhGsIagbBziECNbOZn29agUkmeCHZ5vskTnxNA@public.gmane.org>
2008-01-09 10:48                                         ` Johannes Schindelin
2008-01-09 20:25                                           ` Junio C Hamano
     [not found]                                             ` <7vmyrehhkd.fsf-jO8aZxhGsIagbBziECNbOZn29agUkmeCHZ5vskTnxNA@public.gmane.org>
2008-01-09 20:50                                               ` Johannes Schindelin
     [not found]                                             ` <alpine.LSU.1.00.0801092047190. 31053@racer.site>
     [not found]                                               ` <alpine.LSU.1.00.0801092047190.31053-OGWIkrnhIhzN0uC3ymp8PA@public.gmane.org>
2008-01-09 21:03                                                 ` Steffen Prohaska
     [not found]                                           ` <alpine.LSU.1.00.0801091041570.31053-OGWIkrnhIhzN0uC3ymp8PA@public.gmane.org>
2008-01-10  9:25                                             ` Peter Karlsson
     [not found]                                               ` <Pine.LNX.4.64.0801101023380.11922-Hh8n7enkEC8qi7mQTfpNuw@public.gmane.org>
2008-01-10 11:57                                                 ` Johannes Schindelin
2008-01-11  3:03                                                   ` Miles Bader
2008-01-11  3:03                                                   ` Miles Bader
     [not found]                                               ` <alpine.LSU.1.00.080110115 5140.31053@racer.site>
     [not found]                                                 ` <alpine.LSU.1.00.0801101155140.31053-OGWIkrnhIhzN0uC3ymp8PA@public.gmane.org>
2008-01-10 13:28                                                   ` Peter Karlsson
2008-01-10 14:31                                                     ` Peter Harris
     [not found]                                                       ` <eaa105840801100631p6b95ed86j153d70244d474b03-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2008-01-11 13:12                                                         ` Peter Karlsson
2008-01-11 15:39                                                           ` Peter Harris
2008-01-08 19:59                               ` Steffen Prohaska
2008-01-08 20:11                             ` Junio C Hamano
     [not found]                               ` <7vbq7wrsb6.fsf-jO8aZxhGsIagbBziECNbOZn29agUkmeCHZ5vskTnxNA@public.gmane.org>
2008-01-08 20:20                                 ` Steffen Prohaska
2008-01-08 20:50                             ` Dmitry Potapov
     [not found]                               ` <20080108205054.GN6951-EQL4cN526mwi5CQI31g/s0B+6BGkLq7r@public.gmane.org>
2008-01-08 21:15                                 ` Junio C Hamano
2008-01-08 21:57                                   ` Robin Rosenberg
2008-01-08 21:31                                 ` Linus Torvalds
     [not found]                                   ` <alpine.LFD.1.00.0801081325010.3148-5CScLwifNT1QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org>
2008-01-08 22:09                                     ` Sean
2008-01-08 22:51                                     ` Dmitry Potapov
     [not found]                                       ` <20080108225138.GA23240-EQL4cN526mwi5CQI31g/s0B+6BGkLq7r@public.gmane.org>
2008-01-09  0:01                                         ` Linus Torvalds
2008-01-09  8:43                                     ` Abdelrazak Younes
2008-01-10 19:58                         ` Gregory Jefferis
2008-01-10 20:20                           ` Linus Torvalds
2008-01-10 21:28                             ` Gregory Jefferis
2008-01-10 23:23                               ` Dmitry Potapov
2008-01-11  0:02                               ` Linus Torvalds
2008-01-11  0:32                                 ` Junio C Hamano
2008-01-11  7:10                                 ` Steffen Prohaska
2008-01-11 15:58                                   ` Linus Torvalds
2008-01-11 16:28                                     ` Steffen Prohaska
2008-01-11 17:25                                       ` Linus Torvalds
2008-01-11 17:56                                         ` Steffen Prohaska
2008-01-11 18:10                                           ` Linus Torvalds
2008-01-11 18:29                                             ` Steffen Prohaska
2008-01-11 19:16                                               ` Linus Torvalds
2008-01-11 19:50                                                 ` Sam Ravnborg
2008-01-11 21:18                                                   ` Johannes Schindelin
2008-01-11 22:21                                                     ` Sam Ravnborg
2008-01-12 15:08                                                   ` Dmitry Potapov
2008-01-12 17:54                                                 ` [PATCH] [WIP] safecrlf: Add mechanism to warn about irreversible crlf conversions Steffen Prohaska
2008-01-12 19:14                                                   ` Dmitry Potapov
2008-01-13  9:05                                                     ` [WIP v2] " Steffen Prohaska
2008-01-11 19:53                                             ` CRLF problems with Git on Win32 Christer Weinigel
2008-01-14  9:41                                             ` David Kågedal
2008-01-11 19:00                                       ` Gregory Jefferis [this message]
2008-01-12 15:26                                         ` Dmitry Potapov
2008-01-10 20:50                           ` Rogan Dawes
2008-01-10 21:15                             ` Gregory Jefferis
2008-01-11  1:15                             ` Junio C Hamano
2008-01-08 18:07                       ` Junio C Hamano
2008-01-07 21:36           ` Linus Torvalds
2008-01-08 21:26             ` Peter Karlsson
2008-01-09 10:56               ` Johannes Schindelin
2008-01-09 12:41                 ` Steffen Prohaska
2008-01-09 13:52                   ` Gregory Jefferis
2008-01-09 14:03                     ` Johannes Schindelin
2008-01-09 15:22                       ` Dmitry Potapov
2008-01-09 15:03                     ` Dmitry Potapov
2008-01-09 17:37                       ` Gregory Jefferis
2008-01-09 19:05                         ` Dmitry Potapov
2008-01-07 21:42           ` Thomas Neumann
2008-01-08 10:56             ` Peter Karlsson
2008-01-08 11:07               ` Jeff King
2008-01-08 11:54                 ` Johannes Schindelin
2008-01-08 11:52               ` Johannes Schindelin
2008-01-08 13:07               ` Peter Harris
2008-01-08 15:20                 ` Peter Karlsson
2008-01-08 15:58                 ` Kelvie Wong
2008-01-08 21:33                 ` Dmitry Potapov
2008-01-09 18:46               ` Jan Hudec
2008-01-07 10:13   ` Peter Klavins
2008-01-07 12:58     ` Steffen Prohaska
2008-01-07 13:50     ` Peter Karlsson
2008-01-07 14:14       ` Peter Klavins
2008-01-07 16:05       ` Steffen Prohaska

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=C3AD6D58.10E02%jefferis@gmail.com \
    --to=jefferis@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=prohaska@zib.de \
    --cc=torvalds@linux-foundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).