Skip to content
zit Check-in [503637a369]
Login

Check-in [503637a369]

Overview
Comment: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.

Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: 503637a3695c1d545d8c9c8816641c28eb5f7e1acaa265a64dcb5d037c6d87f2
User & Date: dmestas on 2026-08-18 21:28:15.483
Other Links: manifest | tags
Context
2026-08-18
22:40
export-git: drop a verb-list line pasted into its usage block

'zit export-git --help' printed " \ import-fossil bring a fossil repository's history into zit" as its second line, backslash included. The verbatim help pins cover merge and stash only.

The new pin checks shape instead: no rendered help line may start with a backslash, which catches the paste for every verb. The reference gains merge --no-precedent, which was documented under the wrong verb. check-in: 5fe0d9eafe user: dmestas tags: trunk

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

Changes