# Default: detect text vs binary, normalize text to LF in the repo * text=auto eol=lf # .NET project / IDE files (Visual Studio expects CRLF) *.sln text eol=crlf *.csproj text eol=crlf *.vbproj text eol=crlf *.vcxproj text eol=crlf *.pubxml text eol=crlf *.props text eol=crlf *.targets text eol=crlf # C# / XAML source (Windows convention) *.cs text eol=crlf *.xaml text eol=crlf # Config XML / XSD used by .NET tooling *.xml text eol=crlf *.xsd text eol=crlf *.config text eol=crlf # PowerShell (Windows native) *.ps1 text eol=crlf *.psm1 text eol=crlf *.psd1 text eol=crlf # Web / landing page assets *.html text eol=lf *.css text eol=lf *.js text eol=lf *.svg text eol=lf # Docs / data *.md text eol=lf *.json text eol=lf *.yml text eol=lf *.yaml text eol=lf # Shell scripts *.sh text eol=lf # Binaries *.png binary *.jpg binary *.jpeg binary *.gif binary *.ico binary *.zip binary *.7z binary *.exe binary *.dll binary *.pdb binary *.snk binary *.pfx binary # Vendored third-party sources: keep byte-identical to upstream, no EOL normalization. # Six of the PdfSharpCore files are UTF-16LE, and the explicit "*.cs text eol=crlf" above # overrides git's binary detection - checkout then injects CR into UTF-16 and misaligns # every code unit after the first newline, so a fresh clone won't compile. third_party/** -text