diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..988d366 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,32 @@ +# Zeilenenden +# +# Im Repository steht ueberall LF, unabhaengig davon, auf welchem System +# gearbeitet wird. Der Grund ist nicht Geschmack, sondern eine Falle: +# +# Solange Dateien gemischt vorliegen, schreibt jedes zeilenweise +# arbeitende Werkzeug - sed, ein Formatierer, ein Skript - die Datei mit +# LF zurueck. Der Diff zeigt dann nicht die drei geaenderten Zeilen, +# sondern die ganze Datei. Genau das ist passiert: 578 Diff-Zeilen statt +# 8, kurz vor einem Push bemerkt. +# +# Nebenwirkung derselben Mischung: "git diff --check" meldet bei +# CRLF-Dateien jede hinzugefuegte Zeile als "trailing whitespace", weil +# es das CR so wertet. Damit ist die Pruefung fuer diese Dateien wertlos. +* text=auto eol=lf + +# Shell-Skripte laufen auf dem Server. Ein CRLF im Shebang macht sie +# unbrauchbar ("bad interpreter"), und der Fehler ist von aussen nicht +# anzusehen. Deshalb hier ausdruecklich, nicht nur ueber die Regel oben. +*.sh text eol=lf + +# Binaerdateien nie anfassen. +*.png binary +*.jpg binary +*.jpeg binary +*.gif binary +*.ico binary +*.pdf binary +*.woff binary +*.woff2 binary +*.ttf binary +*.zip binary