lib


Log

Author Commit Date CI Message
Stefan Sperling 27793341 2019-01-12T18:58:04 introduce special error code for a corrupt file index
Stefan Sperling 8da9e5f4 2019-01-12T18:39:19 implement checkout+update as single-pass diff between file index and tree
Stefan Sperling 81a30460 2019-01-09T00:41:58 fix a path matching bug in collect_missing_file()
Stefan Sperling 25a58941 2019-01-08T23:56:48 remove the pathset abstraction again; replaced by RB tree
Stefan Sperling 7a9df742 2019-01-08T23:52:50 replace use of got_pathset in worktree code with RB tree
Stefan Sperling 133d2798 2019-01-08T23:00:56 use RB tree directly instead of a pathset in file index code
Stefan Sperling e0159033 2019-01-08T22:32:42 generalize the pathset's path comparison function
Stefan Sperling 025eb8a5 2019-01-08T22:26:44 avoid unnecessary strdup() in got_pathset's find_element()
Stefan Sperling 6b798c3c 2019-01-08T22:22:53 don't forgot to free file index entries in got_fileindex_free()
Stefan Sperling b504a804 2019-01-08T22:18:23 switch file index entries from TAILQ to got_pathset
Stefan Sperling 8f6d9a6a 2019-01-08T21:48:28 mark got_pathset iteration functions as safe
Stefan Sperling 398789b2 2019-01-08T21:32:07 fix name of a constant in pathset.c
Stefan Sperling 4ba899b3 2019-01-08T21:24:02 remove entry from file index after removing on-disk file, not before
Stefan Sperling 63f4f47b 2019-01-08T21:05:06 whitespace
Stefan Sperling 26c4ac4d 2019-01-08T20:40:28 stop trying to remove parents if a non-empty parent is traversed
Stefan Sperling 90285c3b 2019-01-08T20:13:18 properly remove empty directories left behind during updates
Stefan Sperling efaf56b7 2019-01-08T19:56:13 add got_pathset_for_each_reverse()
Stefan Sperling aaa0878e 2019-01-08T19:44:25 add got_pathset API which manages a tree of paths
Stefan Sperling 11624658 2019-01-08T19:03:33 remove unused definition of nitems()
Stefan Sperling e1ed7f77 2019-01-06T13:47:14 must use safe iteration over file index entries
Stefan Sperling 5cc266ba 2019-01-06T13:14:54 make 'got update' remove directories in a checkout with path prefix
Stefan Sperling 1f46d0af 2019-01-06T13:06:21 rename misleadinly named field in struct collect_missing_entry_args
Stefan Sperling 82d71325 2019-01-06T12:31:33 improve wording of a comment in tree_checkout()
Stefan Sperling f5c49f82 2019-01-06T12:12:16 make 'got update' remove empty directories
Stefan Sperling 6e9da951 2019-01-06T10:46:46 make got_repo_get_path_git_dir() return const char *
Stefan Sperling 7839bc15 2019-01-06T10:42:56 make got_repo_get_path() return const char *
Stefan Sperling 63219cd2 2019-01-04T17:25:09 use unveil(2) in 'got checkout'
Stefan Sperling 512f0d0e 2019-01-03T00:57:49 make 'got update' remove files which were deleted
Stefan Sperling be7061eb 2018-12-30T17:30:42 ensure that 'got update' stays on the current branch
Stefan Sperling 507dc3bb 2018-12-29T17:18:51 add a basic 'got update' command; does not merge files yet
Stefan Sperling e5dc7198 2018-12-29T16:07:41 fix 'same path prefix' check during checkout
Stefan Sperling f609be2e 2018-12-29T15:55:44 fix got_worktree_get_repo_path()
Stefan Sperling 2fbdb5ae 2018-12-29T15:54:00 remove useless strdup from got_worktree_get_repo_path()
Stefan Sperling 49520a32 2018-12-29T15:51:56 verify path prefix when checking out into existing work tree
Stefan Sperling 381be7cc 2018-12-29T15:41:16 don't bother opening trees outside of path prefix
Stefan Sperling eac9755f 2018-12-29T15:39:32 don't bother opening a blob if checkout will skip it
Stefan Sperling a207cf0a 2018-12-29T15:27:13 rename add_file_on_disk() to blob_checkout()
Stefan Sperling 144ad43a 2018-12-29T15:26:21 make checkout skip blobs already recorded in file index
Stefan Sperling eecfbcd1 2018-12-29T15:14:24 introduce macros for status codes
Stefan Sperling d7b62c98 2018-12-27T20:40:39 signal existing files in checkout progress output
Stefan Sperling d70b8e30 2018-12-27T20:35:14 allow checkout on top of an existing tree
Stefan Sperling 3c5b70f2 2018-12-27T20:23:37 always NUL-terminate paths in write_fileindex_path()
Stefan Sperling 60619907 2018-12-27T19:37:53 fix check for NUL byte in read_fileindex_path()
Stefan Sperling 2e22a7cd 2018-12-27T19:19:03 remove redundant existence check
Stefan Sperling 51514078 2018-12-25T16:18:05 preparation for idempotent checkout: read exisiting file index
Stefan Sperling a143fb78 2018-12-25T15:59:11 try to sync file index to disk if checkout hits an error
Stefan Sperling 271d2a38 2018-12-25T15:38:24 store parsed head reference in struct got_worktree
Stefan Sperling fc76cabb 2018-12-25T15:24:16 store base commit of each blob in file index
Stefan Sperling eaccb85f 2018-12-25T15:19:52 store a parsed base commit ID in struct got_worktree
Stefan Sperling 0f92850e 2018-12-25T15:02:25 fix naming of some work tree meta data files and macros
Stefan Sperling 93a30277 2018-12-24T20:11:47 make got_worktree_checkout_files() infer base commit from meta data
Stefan Sperling 65596e15 2018-12-24T19:59:50 store base commit in a dedicated meta file
Stefan Sperling 08d425ea 2018-12-24T19:49:50 undo previous
Stefan Sperling a1a7858a 2018-12-24T18:15:42 store commit hash along with the HEAD ref in .got/head
Stefan Sperling de060dff 2018-12-24T17:39:23 handle zero-length files in open_blob() correctly
Stefan Sperling 454a6b59 2018-12-24T17:32:40 fix fwrite() call in got_object_blob_dump_to_file()
Stefan Sperling 61d6eaa3 2018-12-24T17:30:26 fix broken fwrite() check in add_file_on_disk()
Stefan Sperling b6752625 2018-12-24T17:28:46 fix an unchecked fwrite() call in got_object_blob_dump_to_file()
Stefan Sperling b87c6f83 2018-12-24T17:09:24 catch fatal i/o errors in add_file_on_disk()
Stefan Sperling 3fe2daf1 2018-12-24T17:03:21 remove pointless memcopies from fileindex code
Stefan Sperling 7426bbfd 2018-12-24T16:53:03 rename fileindex functions from open/close to alloc/free
Stefan Sperling 9eb6a6b2 2018-12-24T16:48:45 fix byte-swaps in fileindex read code
Stefan Sperling 52a74475 2018-12-24T16:46:13 implement got_fileindex_read() - not yet tested
Stefan Sperling b8bdcc21 2018-12-24T15:49:43 rename local variable in got_worktree_checkout_files()
Stefan Sperling 5e0b25c4 2018-12-24T14:37:19 wrap another long line
Stefan Sperling a7403916 2018-12-24T14:33:38 wrap overlong line
Stefan Sperling aea5f015 2018-12-24T14:29:50 drop dead code from got_privsep_send_obj_req()
Stefan Sperling 9f2369b0 2018-12-24T14:25:18 make all the read_privsep functions local to object.c
Stefan Sperling ebc55e2d 2018-12-24T14:18:56 eliminate got_object_open() round-trip when opening blobs
Stefan Sperling 09de383e 2018-12-24T14:18:21 fix crash in blame since 18f4293943894155d5ccbdb423f1e8a2bb1e1d62
Stefan Sperling 268f7291 2018-12-24T11:18:58 eliminate got_object_open() round-trip when opening tags
Stefan Sperling 54156555 2018-12-24T10:58:32 undo commit timestamps next to paths in diffs; they are redundant
Stefan Sperling 18f42939 2018-12-24T10:49:42 show blob headers in diffs for added/deleted files
Stefan Sperling adacb96f 2018-12-24T10:39:46 show commit timestamps in diff headers
Stefan Sperling 13c729f7 2018-12-24T09:35:07 eliminate got_object_open() round-trip when opening trees
Stefan Sperling 8524ff9a 2018-12-23T23:45:06 don't clean up twice in start_pack_privsep_child()
Stefan Sperling 711fb6e8 2018-12-23T23:41:25 de-duplicate some code I copied around in object.c
Stefan Sperling a158c901 2018-12-23T23:35:37 make all the _packed_read_privsep() functions local to object.c
Stefan Sperling 6e72e6a3 2018-12-23T23:21:35 there's no point in embedding the object header in commits
Stefan Sperling 1785f84a 2018-12-23T23:15:42 eliminate got_object_open() round-trip when opening commits
Stefan Sperling 4796fb13 2018-12-23T15:09:42 pass object ID to open_loose_object() instead of an object
Stefan Sperling ddf1c734 2018-12-23T14:54:03 make got_object_blob_id_str() a private API
Stefan Sperling 15a94983 2018-12-23T14:48:47 remove struct got_object from public library API
Stefan Sperling 45d799e2 2018-12-23T12:10:27 make commit objects opaque in the library's API
Stefan Sperling abd2672a 2018-12-23T11:36:31 move commit header printing in diffs out of the library
Stefan Sperling 06ca4d09 2018-11-19T10:14:24 stop history traversal once blame has annotated all lines
Stefan Sperling 6fcac457 2018-11-19T10:05:28 store number of lines in int instead of size_t
Stefan Sperling f2e233d8 2018-11-19T09:57:31 don't abort blame in annotate_line() if lines are out of range
Stefan Sperling 998ff57f 2018-11-19T00:22:17 make advance_branch() search the smaller id set first
Stefan Sperling 9f57848c 2018-11-19T00:20:14 remove unnecessary graph search in advance_branch()
Stefan Sperling 81a966c0 2018-11-19T00:11:01 whitespace
Stefan Sperling b7cd37e5 2018-11-19T00:05:48 eliminate strlen() in got_object_id_by_path()
Stefan Sperling 3b7f9878 2018-11-19T00:04:25 eliminate strlen() call in got_object_tree_path_changed()
Stefan Sperling 73026088 2018-11-18T23:47:19 rename got_commit_graph_node's commit_timestamp to timestamp
Stefan Sperling 7a62478b 2018-11-18T23:45:45 remove some unused cruft from commit graph
Stefan Sperling 0e9101d5 2018-11-18T23:37:05 if-return-early instead of if-else in detect_changed_path()
Stefan Sperling 7310c1c3 2018-11-18T23:33:59 don't open tree unnecessarily in detect_changed_path()
Stefan Sperling ce95c694 2018-11-18T23:30:14 remove unreachable code
Stefan Sperling 45f209d7 2018-11-18T23:18:50 add_node() must remove freed nodes from graph in error path
Stefan Sperling 9b88e78c 2018-11-18T23:08:01 don't add duplicates to commit graph's open branches set