Introduces a three-layer defence against CRLF/LF drift: - `.gitattributes` normalizes all text files to LF on commit and checkout; Windows-native scripts (*.bat, *.cmd, *.ps1) explicitly keep CRLF. - `.editorconfig` instructs editors (VS Code, JetBrains, vim, etc.) to save with LF by default so the problem is prevented at the source. - `mixed-line-ending --fix=lf` hook in pre-commit catches anything that slips through and auto-fixes it before commit. No file contents are normalized in this commit — that follows in a separate `git add --renormalize .` commit for easier review.
22 lines
328 B
INI
22 lines
328 B
INI
root = true
|
|
|
|
[*]
|
|
end_of_line = lf
|
|
charset = utf-8
|
|
insert_final_newline = true
|
|
trim_trailing_whitespace = true
|
|
indent_style = space
|
|
indent_size = 4
|
|
|
|
[*.{ts,tsx,js,jsx,mjs,cjs,json,yml,yaml,md,html,css}]
|
|
indent_size = 2
|
|
|
|
[*.md]
|
|
trim_trailing_whitespace = false
|
|
|
|
[*.{bat,cmd,ps1}]
|
|
end_of_line = crlf
|
|
|
|
[Makefile]
|
|
indent_style = tab
|