How do I make Git treat a file as binary?

后端 未结 2 679
清歌不尽
清歌不尽 2020-12-13 03:11

Having a problem with a medium sized project where visual studio project files keep having issues due to git treating them as text and merging. I\'d like to just set the fil

相关标签:
2条回答
  • 2020-12-13 03:40

    Yes, using attributes. Put something like this in your .gitattributes file (create it if it doesn't exist):

    *.sln binary
    *.suo binary
    *.vcxproj binary
    

    Here binary is actually a predefined macro, equivalent to -diff -merge -text.

    If you want to still be able to see the diff, you can use:

    *.sln -merge -text
    

    This way, the *.sln files won't be merged, not have eol normalized, but meanwhile diff-able.

    0 讨论(0)
  • 2020-12-13 03:47

    You should define binary file attributes in your .gitattributes file (create it if it doesn't exist) by putting these lines in it, to prevent it to handle it as text diff file:

    # Define binary file attributes.
    # - Do not treat them as text.
    # - Include binary diff in patches instead of "binary files differ."
    *.sln     -text diff
    *.suo     -text diff
    *.vcxproj -text diff
    *.gif     -text diff
    *.gz      -text diff
    *.ico     -text diff
    *.jpeg    -text diff   
    
    0 讨论(0)
提交回复
热议问题