Skip to content
go-libfossil Check-in [5be36b41a0]
Login

Check-in [5be36b41a0]

Overview
Comment:fix(stash): stash, revert and apply symlinks as fossil's stash does

Save reads each changed file through vfile.Disk, so a symlink is stashed as its target's name and recorded with file_islink, and its revert makes it a link to the committed target. Apply writes a stashed symlink as a symlink and deletes a link before writing, so neither writes through one.

Timelines: family | ancestors | descendants | both | main | trunk | feat/submanifest-reader
Files: files | file ages | folders
SHA3-256: 5be36b41a06a47854ad922e247826d1b6064e6c6bcb0998a7b115ff82e253a09
User & Date: [email protected] on 2026-10-19 23:06:21.000
Other Links: branch diff | manifest | tags
Context
2026-10-19
23:09
test: fossil reads go's symlink undo state and go reads fossil's; RestoreFiles keeps links check-in: 03f0b0c67b user: [email protected] tags: feat/submanifest-reader, main, trunk
23:06
fix(stash): stash, revert and apply symlinks as fossil's stash does

Save reads each changed file through vfile.Disk, so a symlink is stashed as its target's name and recorded with file_islink, and its revert makes it a link to the committed target. Apply writes a stashed symlink as a symlink and deletes a link before writing, so neither writes through one. check-in: 5be36b41a0 user: [email protected] tags: feat/submanifest-reader, main, trunk

23:02
fix(checkout): revert a symlink as fossil's revert does

restoreCommitted writes through vfile.Disk with the row's islink, so a repointed link is made a link to its committed target again instead of having that name written into the file it points to. check-in: 6a440bc42f user: [email protected] tags: feat/submanifest-reader, main, trunk

Changes