.gitattributes and defaulting to binary

2 messages, 2 authors, 2016-06-15 · open the first message on its own page

.gitattributes and defaulting to binary

From: Matthieu Vachon <hidden>
Date: 2016-06-15 22:58:46

Hi all,

I would like to craft my `.gitattributes` in a way that all files
expect those specified in it are treated as binary from a line-ending
normalization point of view (and diff viewing).

But I was not able to achieve it right now. When having this in my
`.gitattributes`, git treats all files as binary, even the one
explicitly specified like `*.txt`:

    *.txt text
    * binary

I tried with:

    *.txt text
    * -text

And it does not seem to work correctly neither because then, my
`test.txt` file is not having correct line ending when setting
`core.eol` to `crlf` (or using `eol=crlf` in the `.gitattributes`
file).

So, is it possible to do something like that? If yes, is my sample
`.gitattributes` should work?

Regards,
Matt

Re: .gitattributes and defaulting to binary

From: Jeff King <hidden>
Date: 2016-06-15 22:58:46

On Mon, Sep 16, 2013 at 05:35:24PM -0400, Matthieu Vachon wrote:
But I was not able to achieve it right now. When having this in my
`.gitattributes`, git treats all files as binary, even the one
explicitly specified like `*.txt`:

    *.txt text
    * binary
From "git help attributes":
  When more than one pattern matches the path, a later line overrides an
  earlier line. This overriding is done per attribute.

Reversing the two lines should do what you want.

You may also want to use "-text" instead of "binary"; the latter also
implies "-diff", which means you will never see diffs of those files,
even if they are actually text.

-Peff
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help