Subject: Re: CRLF problems with Git on Win32

From: Gregory Jefferis <[email-masked]>
Date: Wed, 09 Jan 2008 13:52:59 +0000

On 9/1/08 12:41, "Steffen Prohaska" <[email-masked]> wrote:

> I'll further think about "crlf=safe" (see another mail in this
> thread). I like the idea of safe because it guarantees that data
> will never be corrupted.  But I have no time to think about it
> immediately.

crlf=safe [i.e. munging CRLFs only if there are no bare LFs] sounds
appealing to me as well because it looks like munging that is always
reversible.  However there could still be problems at checkout.  To be
really safe, it seems to me that it must be 1) reversible in practice and 2)
ALWAYS reversed unless we explicitly ask for no gnuming at checkout.  Why?

Re point (1) to be reversible in practice, we need to know who we've munged.
Otherwise when gnuming blindly at checkout we might damage some innocent
bystander file that only ever had LFs in the first place.  So it seems we
would have to keep track of who was munged.  But do we want to store this in
the repository?

Re (2) well if we happen to munge a file on checkin that is actually binary,
it must be gnumed on the way out otherwise it will be broken for the user.