Commits


document how work tree locking will work


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()


fileindex update function probably won't be needed after all


store a path prefix in the worktree; will be used for subtree checkout


file_index -> fileindex


rename file_index -> fileindex


typo in comment


whitespace


add stub for anticipated worktree function which updates fileindex


add a helper function which creates worktree meta files


stamp worktrees with a format number


bump copyright


unwrap short line


indent long line


make workdir tests clean up workdirs if tests pass


add test for non-destructive behaviour of worktree_init()


add worktree skeleton code; implement got_worktree_init()


don't forget to set error message in got_error_from_errno()


file index path padding is only needed on disk


file index entries are variable in size; use a tailq