On Thursday 02 July 2009 07:35:34 Jeff King wrote: > 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 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html