Repository navigation
Expand file tree
/
Copy path.gitattributes
More file actions
46 lines (42 loc) · 1.38 KB
/
Copy path.gitattributes
File metadata and controls
46 lines (42 loc) · 1.38 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
# Auto-detect text files and normalize line endings
* text=auto eol=lf
# Force LF for shell + cross-platform scripting
*.sh text eol=lf
*.py text eol=lf
*.js text eol=lf
*.ts text eol=lf
*.json text eol=lf
*.yml text eol=lf
*.yaml text eol=lf
*.md text eol=lf
*.css text eol=lf
*.html text eol=lf
# Force CRLF for Windows-native scripting
*.ps1 text eol=crlf
*.bat text eol=crlf
*.cmd text eol=crlf
# Binary: never diff or normalize
*.png binary
*.jpg binary
*.jpeg binary
*.gif binary
*.ico binary
*.zip binary
*.gz binary
*.pdf binary
*.woff binary
*.woff2 binary
*.ttf binary
*.eot binary
# Memory pool indexes merge with the union driver. MEMORY.md is generated from
# the pool's entries (memory-index), so when two machines commit the same pool
# (an Operator who gives both the same host key) each regenerates it. Without
# union, two machines that each add an entry between the same two index lines
# conflict in the daily sync's pull --rebase, which aborts and pushes nothing,
# and every later sync fails the same way until someone resolves it (the whole
# backup, not only memory). Union keeps
# both sides' lines, and the next regeneration rewrites the file from the
# entries, so a stale line one side edited is a one-session leftover. The
# entries themselves are NOT unioned: two edits of one entry stay a visible
# conflict. Pinned by verify-ops-selftest.sh.
/.claude-memory/*/MEMORY.md merge=union