Artifact 8dcc2f23aa4c17bf23fdb630aa3b7512681ae64cc000501d80c8a3d0b331ea61:
- File
conformance/sparse_worktree_revert_test.go
-
2026-10-21 12:29:31
— part of check-in
[c314e928f8]
on branch feat/submanifest-reader
— fix(stash): stash a pending merge as fossil does
Save no longer refuses while a merge is pending. As fossil's stash save, it stashes each changed file against the content last written for it (mrid) and reverts only the stashed files, so vmerge is kept and the next commit records the merge parent. A file the merge added is not in the checked-out version, so its revert deletes it.
Apply now fails before writing anything when a stashed modified file is missing from disk, as fossil's pop fails with "no such file" and rolls back; this is what a merge-added file meets after the save.
In a sparse checkout the record-only merge outside the cone is left pending and unmaterialized, and the in-cone files round-trip. (user: [email protected], size: 11493) [annotate] [blame] [check-ins using]
- 2026-10-21 12:30:02 — part of check-in [15a47df65a] on branch feat/submanifest-reader — Merge branch 'fix/stash-pending-merge' into feat/submanifest-reader (user: [email protected], size: 11493) [annotate] [blame] [check-ins using]
-
2026-10-21 12:29:31
— part of check-in
[c314e928f8]
on branch feat/submanifest-reader
— fix(stash): stash a pending merge as fossil does