How do I make Git treat a file as binary?
Solution 1:
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.
Solution 2:
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