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

Re: Bug report: .gitattributes: -diff Unset causes files to be reported as binaries

From
Frans Englich <fenglich@fastmail.fm>
Date
Jul 2, 2009, 08:14 UTC
Message-ID
<200907021014.06540.fenglich@fastmail.fm>
In-Reply-To
<20090702053534.GA13255@sigio.peff.net>
On Thursday 02 July 2009 07:35:34 Jeff King wrote:
Show 9 quoted lines
> On Wed, Jul 01, 2009 at 12:08:35PM +0200, Frans Englich wrote:
> > Applying -diff Unset to a file using .gittattributes causes "git diff"
> > to state that the file is a binary even though it isn't, or have been
> > instructed to be treated as one. See attached script for reproducing.
>
> I think you are a little confused by the syntax. Each line of the
> gitattributes file has a filename pattern and a set of attributes. Each
> attribute is either set, unset, set to a value, or unspecified. For your
> example (file.txt and the "diff" attribute), they look like:

Perhaps that should be considered another bug; that invalid syntax is accepted, instead of being communicated to the user.

[...]
> So as far as I can see, git is behaving exactly as it is supposed to.
> Maybe you can be more specific about what effect you were trying to
> achieve by setting gitattributes in the first place?

To exclude it in diffs, such as from `git show`. Take the case where you have a grammar file for a parser and generate a source file from it(or any similar scenario); the diff for the generated source file is not of interest and is just noisy when read as part of a patch. This applies to all kinds of generated files. However, this doesn't mean that the file should be treated as a binary, and what practicalities that implies.

If -diff affects whether a file is treated as a binary, as opposed whether it's diff'ed, it would imo make sense to call it -binary.

Cheers,
		Frans
Previous: Jeff KingNext: Paolo Bonzini
Message 3 of 10 in “Bug report: .gitattributes: -diff Unset causes files to be reported as binaries”
  1. Frans EnglichJul 1, 2009
  2. Jeff KingJul 2, 2009
  3. Frans EnglichJul 2, 2009
  4. Paolo BonziniJul 2, 2009
  5. Frans EnglichJul 2, 2009
  6. Paolo BonziniJul 2, 2009
  7. Jeff KingJul 2, 2009
  8. Jakub NarebskiJul 2, 2009
  9. Jeff KingJul 2, 2009
  10. René ScharfeJul 2, 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.