Commits


rename library-private headers from *_priv.h to *_lib.h


rename worktree_root to root_path in struct worktree


rename some fields in struct worktree


read / free the head ref when work tree is opened / closed


free base commit when worktree is closed


read base commit hash when worktree is opened


set base commit to invalid commit id when work tree is created


check read() return value properly in read_meta_file()


rename variable gotpath to path_got


add a proper definition for the worktree head


create an emtpy base-commit file


use a dedicated file for the work tree lock


use flock(2) because open(2) O_NONBLOCK also enables non-blocking I/O


lock meta data files in worktree correctly


implement worktree open and close operations