Skip to content
zit Check-in [2711adbb03]
Login

Check-in [2711adbb03]

Overview
Comment:binary-glob and crlf-glob: declarative content policy (#81)

Both are opt-in: an unset glob is no opinion, not refuse-everything, so a repository that never set one commits exactly as before. Set binary-glob to *.png and PNGs are the binaries the project expects, so a stray .o is refused. Neither runs code, so unlike before-commit they bind a fresh clone with no consent step -- that asymmetry is why they exist.

The check gates what a commit INTRODUCES: an all-files commit re-captures every managed path, so classifying unchanged content would make declaring a glob block every later commit until the whole tree already conformed. Comparing against the parent's blob grandfathers inherited files, per content rather than per path, so editing one re-checks it.

--no-checks waives it, the same flag that waives before-commit.

Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: 2711adbb03cb88125f630db859a6ac403bd9b96a64b838d79d0e09dcf3313190
User & Date: dmestas on 2026-08-16 21:47:22.412
Other Links: manifest | tags
Context
2026-08-17
11:06
merge sparse-cone: classify paths against the cone and name the deciding member (#79) check-in: 187ad81e8c user: dmestas tags: trunk
00:14
Create new branch named "sparse-cone" check-in: a620c24254 user: dmestas tags: sparse-cone
2026-08-16
21:47
binary-glob and crlf-glob: declarative content policy (#81)

Both are opt-in: an unset glob is no opinion, not refuse-everything, so a repository that never set one commits exactly as before. Set binary-glob to *.png and PNGs are the binaries the project expects, so a stray .o is refused. Neither runs code, so unlike before-commit they bind a fresh clone with no consent step -- that asymmetry is why they exist.

The check gates what a commit INTRODUCES: an all-files commit re-captures every managed path, so classifying unchanged content would make declaring a glob block every later commit until the whole tree already conformed. Comparing against the parent's blob grandfathers inherited files, per content rather than per path, so editing one re-checks it.

--no-checks waives it, the same flag that waives before-commit. check-in: 2711adbb03 user: dmestas tags: trunk

21:28
merge project-code: read a repository's identity without a checkout (#85) check-in: 1fc9e67f22 user: dmestas tags: trunk
Changes