Commits


fix worktree test build: remove more unused variables


in got_worktree_checkout_files, init file index path before using


remove base-commit meta file; this will move into the fileindex


write file index after checking out files


initial implementation of worktree checkout


remove got_worktree_change_head() for now


implement got_worktree_get_head_ref_name()


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


assume good path input in got_worktree_init()


add function to read worktree meta data file


rename worktree set_head() operation to change_head()