Subject: Re: [PATCH] Fix several places where diff.renames in config can be problematic

From: Eric Wong <[email-masked]>
Date: Sat, 8 Jul 2006 01:41:22 -0700

Junio C Hamano <[email-masked]> wrote:
> Eric Wong <[email-masked]> writes:
> 
> > -my @files = safe_pipe_capture('git-diff-tree', '-r', $parent, $commit);
> > +my @files = safe_pipe_capture('git-diff-tree','--no-renames','-r',
> > +				$parent, $commit);
> 
> I changed my mind.
> 
> -- >8 --
> diff: do not use configuration magic at the core-level
> 
> The Porcelainish has become so much usable as the UI that there
> is not much reason people should be using the core programs by
> hand anymore.  At this point we are better off making the
> behaviour of the core programs predictable by keeping them
> unaffected by the configuration variables.  Otherwise they will
> become very hard to use as reliable building blocks.
> 
> For example, "git-commit -a" internally uses git-diff-files to
> figure out the set of paths that need to be updated in the
> index, and we should never allow diff.renames that happens to be
> in the configuration to interfere (or slow down the process).
> 
> The UI level configuration such as showing renamed diff and
> coloring are still honored by the Porcelainish ("git log" family
> and "git diff"), but not by the core anymore.

Full ack on this.  I was ready to let my diff.renames patch drop
if there were too many potential incompatibilities/breakages,
but this should alleviate that.

I should work on breaking out of the habit of using git
diff-{index,tree} in my day-to-day use and finally start using git diff
more to save some keystrokes.

-- 
Eric Wong