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

Check-in [5a08dc00df]

Overview
Comment:test: undo, revert and stash of a repointed symlink (red)
Timelines: family | ancestors | descendants | both | main | trunk | feat/submanifest-reader
Files: files | file ages | folders
SHA3-256: 5a08dc00df60138be90d08a539071d9a92baf16f3b2c55b155600b6427706c37
User & Date: [email protected] on 2026-10-19 22:50:30.000
Other Links: branch diff | manifest | tags
Context
2026-10-19
22:58
fix(undo): save and restore symlinks as fossil's undo does

Move checkout's link-aware diskView into vfile.Disk, so checkout, undo and stash share one RepoFILE view: Stat, Read, Write (which deletes a link before writing, makes a symlink when allow-symlinks is on, creates the directory and sets the executable bit as file_setexe does), SetExe, MTime and Remove. The allow-symlinks setting is read by vfile.OpenDisk.

undo.Save, Undo, Redo, Swap, ReadFile and RestoreFiles now take a Disk: a symlink is read as its target's name and recorded with isLink, and is deleted and made a symlink again on restore, as undo_save and undo_one do, so Undo of an Update no longer writes through a link. check-in: 858c20561f user: [email protected] tags: feat/submanifest-reader, main, trunk

22:50
test: undo, revert and stash of a repointed symlink (red) check-in: 5a08dc00df user: [email protected] tags: feat/submanifest-reader, main, trunk
18:34
fix(checkout): materialize a symlink entering the cone as a symlink

The cones merge called extractSingleFile without the islink argument the symlink fix added, so it did not build. SetCone now passes the row's islink, and a file entering the cone is written as Extract writes it: a symlink with allow-symlinks on. check-in: 36fccc1f87 user: [email protected] tags: feat/submanifest-reader, main, trunk

Changes