Commits


open files during status crawl in a race-free way, too


prevent the status crawl from racing with paths changing in the filesystem


implement got_worktree_stage_paths()


add staged blob SHA1 to on-disk file index; bump file index version


define file index stage flags


remove ie->path_len; use path length stored in file index entry flags


remove unused fileindex flags


require callers to pass path length to got_fileindex_entry_get()


eliminate strlen() calls during fileindex rb tree searches


add conversion functions for fileindex/stat permission bits


add support for partial updates, which affect specific paths only


add a basic implementation of 'got rm'


implement a basic 'got add' command


make file index flags private to fileindex.c


renmae GOT_FILEIDX_F_NOT_ON_DISK to GOT_FILEIDX_F_NOT_FLUSHED


rename 'intent-to-add' file index flag to 'not-on-disk'


allow restricting 'got diff' and 'got status' to a path in work tree


don't update cached timestamps of already modified files


make 'got status' work in subdirectories of a work tree


use path lists to sort dirent, tree object, and file index entries


add support for diffing fileindex against an on-disk directory tree


rename tree-specific fileindex diff callbacks


happy new copyright year


change GOT_INDEX_ENTRY prefix to GOT_FILEIDX


fix various issues in new update implementation