git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] Respect core.autocrlf when preparing temporary files for external diff

From
Junio C Hamano <gitster@pobox.com>
Date
Mar 22, 2009, 00:03 UTC
Message-ID
<7v8wmybf06.fsf@gitster.siamese.dyndns.org>
In-Reply-To
<alpine.DEB.1.00.0903220053260.10279@pacific.mpi-cbg.de>
Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:
Show 15 quoted lines
> On Sat, 21 Mar 2009, Junio C Hamano wrote:
>
>> Johannes Schindelin <johannes.schindelin@gmx.de> writes:
>> 
>> > When preparing temporary files for an external diff, the files should 
>> > be handled as if they were worktree files.
>> 
>> I do not think so.  convert_to_working_tree() aka "smudge" means you 
>> would be feeding crap like $Id$ expansion to the external diff, which we 
>> chose not to do quite on purpose.
>
> You might have missed me mentioning that we often can do without temporary 
> files, taking the working directory copies right away?
>
> And if you think about it, it makes complete sense.
Not "complete".

What is at issue is how consistent the codepath that calls out to an external diff should be with the rest of git that solely work with the "clean" version of blob contents. If you value consistency, I would say that it is valid to argue that letting it borrow from a work tree is a bug. It should be always feeding a clean version.

But if you think that we do not care really about the correctness of the external diff codepath, because it is a mechanism used mostly for giving output to humans (as opposed to feeding the output of the external diff program back to programs to be processed further) , I can understand why you think it is easier to the external programs if "smudged" version is fed to them.

Not just I can _understand_, but I think I could be pursuaded to agree with that position, iff you try harder.

But the assumption/rationale behind this change needs to be spelled out. In essence, we are sacrificing purity and correctness because we consider ease of building external diff filter is more important.

Or something like that.
Previous: Johannes SchindelinNext: Junio C Hamano
Message 5 of 14 in “Respect core.autocrlf when preparing temporary files for external diff”
  1. Respect core.autocrlf when preparing temporary files for external diffJohannes Schindelin, Mar 21, 2009
  2. Michael J GruberMar 21, 2009
  3. Junio C HamanoMar 21, 2009
  4. Johannes SchindelinMar 21, 2009
  5. Junio C HamanoMar 22, 2009
  6. Junio C HamanoMar 22, 2009
  7. Jeff KingMar 22, 2009
  8. Junio C HamanoMar 22, 2009
  9. Jeff KingMar 22, 2009
  10. Sebastian SchuberthMar 22, 2009
  11. Junio C HamanoMar 22, 2009
  12. Sebastian SchuberthMar 22, 2009
  13. Junio C HamanoMar 22, 2009
  14. Junio C HamanoMar 23, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.