diff --git a/.gitattributes b/.gitattributes index 412eeda7..64fffbbc 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,22 +1,69 @@ -# Auto detect text files and perform LF normalization +############################################################################### +# Handle line endings automatically for files detected as text +# and leave all files detected as binary untouched. * text=auto +# Force the following filetypes to have unix eols and encoding, so that Windows does not break them. +# If a file is going to be used on linux and windows, we want it invariant, +# rather than automatically translated, because automatic translation always screw things up. +* text=auto eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 +.gitignore text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 +.gitattributes text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 +.gitmodules text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 +*.sh text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 +*.c text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 +*.cpp text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 +*.h text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 +*.txt text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 +*.html text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 +*.htm text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 +*.md text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 +*.pandoc text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 +*.css text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 +*.manifest text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 -# Custom for Visual Studio -*.cs diff=csharp -*.sln merge=union -*.csproj merge=union -*.vbproj merge=union -*.fsproj merge=union -*.dbproj merge=union -# Standard to msysgit -*.doc diff=astextplain -*.DOC diff=astextplain -*.docx diff=astextplain -*.DOCX diff=astextplain -*.dot diff=astextplain -*.DOT diff=astextplain -*.pdf diff=astextplain -*.PDF diff=astextplain -*.rtf diff=astextplain -*.RTF diff=astextplain +makefile text eol=lf encoding=utf-8 +Makefile text eol=lf encoding=utf-8 + +# Force the following Visual Studio specific filetypes to have Windows eols, +# so that Git does not break them +*.bat text eol=crlf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 +*.cmd text eol=crlf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 +*.rc text eol=crlf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 +*.sln text eol=crlf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 +*.vcproj text eol=crlf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 +*.vcxproj text eol=crlf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 +*.vcxproj.filters text eol=crlf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 +*.vcxproj.user text eol=crlf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 + +# Force binary files to be binary + +*.webp binary +*.pdf binary +*.doc binary +*.DOC binary +*.docx binary +*.DOCX binary +*.dot binary +*.DOT binary +*.PDF binary +*.rtf binary +*.RTF binary + +############################################################################### +# diff behavior for common document formats +# +# Convert binary document formats to text before diffing them. This feature +# is only available from the command line. Turn it on by uncommenting the +# entries below. +############################################################################### +#*.doc diff=astextplain +#*.DOC diff=astextplain +#*.docx diff=astextplain +#*.DOCX diff=astextplain +#*.dot diff=astextplain +#*.DOT diff=astextplain +#*.pdf diff=astextplain +#*.PDF diff=astextplain +#*.rtf diff=astextplain +#*.RTF diff=astextplain