Subject: Re: [PATCH] Clarify text filter merge conflict reduction docs

From: Junio C Hamano <[email-masked]>
Date: Wed, 30 Jun 2010 08:15:00 -0700

Eyvind Bernhardsen <[email-masked]> writes:

> Are you thinking that we could check changes in .gitattributes during a
> merge and only turn on normalization for those files where relevant
> attributes have changed?

Nothing that elaborate.

I was envisioning that we would compare object names of the .gitattributes
files in directories that lead to the path being merged in three trees,
and we use the new slowpath unless all three match.  You could look _into_
the actual contents of .gitattributes and decide that a particular change
does not affect the path you are merging, but I don't think it is worth
it; sane people are expected not to flip CRLF/LF around many times a day
anyway, so changes to .gitattributes should already be rare events.

We will be walking the trees in parallel while merging anyway, so when you
have to merge a/b/c.txt, we would already have opened the top-level tree,
tree "a", and tree "a/b" already, and we should be able pick up the object
name of .gitattributes, a/.gitattributes and b/.gitattributes cheaply
without opening any extra object.