Skip to content
zit Check-in [a9a24a857c]
Login

Check-in [a9a24a857c]

Overview
Comment:precedent: remember conflict resolutions and replay them

A merge records each conflict in the local .zit-precedent sidecar; commit attaches the resolution the operator settled on; a later merge whose conflicted bytes match replays it instead of writing markers. Keyed by path and conflicted bytes, exact because the diff3 envelope carries all three sides. Whole-file, so a file whose other conflict moved will not replay.

Replay is named per file, never silent. --no-precedent declines for one merge without forgetting. 'zit precedent list|show|forget', alias rerere. The sidecar is a reserved advisory name, so it can never become an artifact.

Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: a9a24a857cb97c23b02c717a2bd518830b23a4db79ff6568cc57098a1d353d73
User & Date: dmestas on 2026-08-18 20:37:02.333
Other Links: manifest | tags
Context
2026-08-18
21:28
stash: reserve .zit-stash so it cannot be tracked

The sidecar was absent from the control-path registry, so extras listed it and add accepted it: an ordinary add put the contents of stashed work into a check-in and synced it to every peer, recoverable only by shunning. The stash help already promised "never an artifact"; nothing enforced it.

Authoritative tier, matching what losing the file costs. check-in: 503637a369 user: dmestas tags: trunk

20:37
precedent: remember conflict resolutions and replay them

A merge records each conflict in the local .zit-precedent sidecar; commit attaches the resolution the operator settled on; a later merge whose conflicted bytes match replays it instead of writing markers. Keyed by path and conflicted bytes, exact because the diff3 envelope carries all three sides. Whole-file, so a file whose other conflict moved will not replay.

Replay is named per file, never silent. --no-precedent declines for one merge without forgetting. 'zit precedent list|show|forget', alias rerere. The sidecar is a reserved advisory name, so it can never become an artifact. check-in: a9a24a857c user: dmestas tags: trunk

19:39
fix(release): export tag-only mirror changes check-in: 91cc1528fc user: dmestas tags: trunk
Changes