-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.gitattributes
More file actions
203 lines (189 loc) · 6.36 KB
/
Copy path.gitattributes
File metadata and controls
203 lines (189 loc) · 6.36 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
###############################################################################
# Core: normalize line endings + UTF-8
###############################################################################
# Normalize to LF in repo; editors can show CRLF on Windows if configured
* text=auto eol=lf
# Explicit LF for common scripts
*.sh text eol=lf
*.bash text eol=lf
*.zsh text eol=lf
*.py text eol=lf
*.rb text eol=lf
*.pl text eol=lf
*.php text eol=lf
*.rs text eol=lf
*.go text eol=lf
*.java text eol=lf
*.kt text eol=lf
*.scala text eol=lf
*.ts text eol=lf
*.tsx text eol=lf
*.js text eol=lf
*.jsx text eol=lf
*.css text eol=lf
*.scss text eol=lf
*.less text eol=lf
*.md text eol=lf
*.yml text eol=lf
*.yaml text eol=lf
*.toml text eol=lf
*.json text eol=lf
*.sql text eol=lf
.env* text eol=lf
Dockerfile text eol=lf
devcontainer.json text eol=lf
vite.config.* text eol=lf
vitest.config.* text eol=lf
*.gradle text eol=lf
# Windows-only scripts that expect CRLF
*.bat text eol=crlf
*.cmd text eol=crlf
###############################################################################
# Binary safety: never auto-convert line endings; avoid broken diffs
###############################################################################
# Images
*.png binary
*.jpg binary
*.jpeg binary
*.gif binary
*.webp binary
*.tiff binary
*.ico binary
*.psd binary
# Fonts
*.woff binary
*.woff2 binary
*.ttf binary
*.otf binary
*.eot binary
# Audio / Video
*.mp3 binary
*.wav binary
*.flac binary
*.mp4 binary
*.mov binary
*.avi binary
*.mkv binary
*.webm binary
# Archives & packages
*.zip binary
*.gz binary
*.bz2 binary
*.7z binary
*.rar binary
*.tar binary
*.tgz binary
*.jar binary
*.war binary
*.nupkg binary
*.dmg binary
*.iso binary
# Data / design / CAD
*.pdf binary
*.ai binary
*.eps binary
*.sketch binary
*.fig binary
*.blend binary
*.step binary
*.stp binary
*.stl binary
*.glb binary
*.gltf binary
###############################################################################
# Diff quality: use built-in or custom drivers (configure in .gitconfig)
###############################################################################
# JSON: show word-level diffs ignoring whitespace & ordering (driver required)
*.json text diff=json
# Markdown: better prose diffs (driver required)
*.md text diff=markdown
# Lockfiles: huge JSON—treat as text but favor minimal/word diffs
package-lock.json text diff=lockfile
pnpm-lock.yaml text
yarn.lock text
composer.lock text
Pipfile.lock text
Cargo.lock text
Gemfile.lock text
poetry.lock text
go.sum text
# Source code tweaks (drivers optional—harmless if not configured)
*.py text diff=python
*.rb text diff=ruby
*.js text diff=javascript
*.ts text diff=javascript
*.tsx text diff=javascript
*.java text diff=java
*.kt text diff=kotlin
*.go text diff=golang
*.rs text diff=rust
*.css text diff=css
*.scss text diff=css
###############################################################################
# Merge strategies: reduce churn on “list” files; avoid conflicts on versioned files
###############################################################################
# Union-merge additive files (order may vary)
.gitignore merge=union
.gitattributes merge=union
docker-compose*.yml merge=union
# Keep lockfiles simple (requires `git config merge.theirs.driver true` alias)
# Uncomment if you prefer “take theirs” on lockfile conflicts:
# package-lock.json merge=theirs
# yarn.lock merge=theirs
# pnpm-lock.yaml merge=theirs
# Cargo.lock merge=theirs
# go.sum merge=theirs
###############################################################################
# Git LFS (optional): uncomment if you use LFS; keep large binaries out of Git
###############################################################################
# Filter typical large assets via LFS (requires git-lfs installed)
# *.psd filter=lfs diff=lfs merge=lfs -text
# *.ai filter=lfs diff=lfs merge=lfs -text
# *.pdf filter=lfs diff=lfs merge=lfs -text
# *.mp4 filter=lfs diff=lfs merge=lfs -text
# *.zip filter=lfs diff=lfs merge=lfs -text
# *.glb filter=lfs diff=lfs merge=lfs -text
# Design files lockable to avoid parallel edits
# *.psd lockable
# *.ai lockable
# *.fig lockable
# *.sketch lockable
###############################################################################
# Exports: keep release/source archives lean (git archive / GitHub “Download ZIP”)
###############################################################################
# Ignore dev-only files on export
.gitattributes export-ignore
.gitignore export-ignore
.gitmodules export-ignore
.github/ export-ignore
.githooks/ export-ignore
.gitlab/ export-ignore
.vscode/ export-ignore
.idea/ export-ignore
.editorconfig export-ignore
*.code-workspace export-ignore
# Tests, examples, docs (toggle to taste)
# /tests/ export-ignore
# /examples/ export-ignore
# /docs/ export-ignore
# Tooling
/.devcontainer/ export-ignore
/.docker/ export-ignore
/scripts/ export-ignore
node_modules/ export-ignore
*.log export-ignore
###############################################################################
# GitHub Linguist tuning (visual stats only—does not affect Git operations)
###############################################################################
# Treat vendored/generated files as such
vendor/** linguist-vendored
third_party/** linguist-vendored
**/dist/** linguist-generated
**/build/** linguist-generated
**/*.min.js linguist-generated
**/*.min.css linguist-generated
# Set language for odd extensions (examples)
*.hcl linguist-language=HCL
*.tf linguist-language=HCL
*.hbs linguist-language=Handlebars
*.tpl linguist-language=Go