lib/worktree.c


Log

Author Commit Date CI Message
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 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 61d6eaa3 2018-12-24T17:30:26 fix broken fwrite() check in add_file_on_disk()
Stefan Sperling b87c6f83 2018-12-24T17:09:24 catch fatal i/o errors in add_file_on_disk()
Stefan Sperling 7426bbfd 2018-12-24T16:53:03 rename fileindex functions from open/close to alloc/free
Stefan Sperling b8bdcc21 2018-12-24T15:49:43 rename local variable in got_worktree_checkout_files()
Stefan Sperling 15a94983 2018-12-23T14:48:47 remove struct got_object from public library API
Stefan Sperling 99437157 2018-11-11T12:52:59 abort checkout operations cleanly when Ctrl-C is hit
Stefan Sperling edfa7d7f 2018-09-11T11:31:34 plug a tree object leak in worktree.c
Stefan Sperling 63581804 2018-07-09T22:23:00 rename zbuf to inflate
Stefan Sperling 883f0469 2018-06-23T17:57:39 make struct got_tree_object opaque
Stefan Sperling 511a516b 2018-05-19T16:57:12 move got_opentmp* functions to public API; used from tog
Stefan Sperling 5261c201 2018-04-01T23:37:09 rename 'refs' to 'reference'
Stefan Sperling f7b38925 2018-04-01T20:40:35 make paths shown during checkout match what is created on disk
Stefan Sperling 0a585a0d 2018-03-17T18:13:19 remove GOT_ERR_NO_MEM, we can just use errno in those cases
Stefan Sperling 718b3ab0 2018-03-17T17:50:48 rename the library-internal headers again to a common prefix
Stefan Sperling 0bb8a95e 2018-03-12T22:00:08 add support for checking out a subtree
Stefan Sperling 92a684f4 2018-03-12T21:34:38 show progress during checkout
Stefan Sperling 23b19d00 2018-03-12T14:08:37 fix worktree test build: remove more unused variables
Stefan Sperling 51664889 2018-03-12T13:41:13 in got_worktree_checkout_files, init file index path before using
Stefan Sperling e77c4c9f 2018-03-12T13:37:17 remove base-commit meta file; this will move into the fileindex
Stefan Sperling c34b20a2 2018-03-12T13:06:03 write file index after checking out files
Stefan Sperling 9d31a1d8 2018-03-11T20:39:31 initial implementation of worktree checkout
Stefan Sperling dc2404d9 2018-03-11T14:28:36 remove got_worktree_change_head() for now
Stefan Sperling 35be1456 2018-03-11T14:27:53 implement got_worktree_get_head_ref_name()
Stefan Sperling 32cb896c 2018-03-11T14:10:56 rename library-private headers from *_priv.h to *_lib.h
Stefan Sperling c88eb298 2018-03-11T13:15:49 rename worktree_root to root_path in struct worktree
Stefan Sperling cde76477 2018-03-11T13:14:08 rename some fields in struct worktree
Stefan Sperling e8f36958 2018-03-11T13:11:43 read / free the head ref when work tree is opened / closed
Stefan Sperling d6c38e0d 2018-03-11T13:08:03 free base commit when worktree is closed
Stefan Sperling f5baf295 2018-03-11T13:06:45 read base commit hash when worktree is opened
Stefan Sperling 65e3b818 2018-03-11T12:52:02 set base commit to invalid commit id when work tree is created
Stefan Sperling 0605801d 2018-03-11T12:44:13 check read() return value properly in read_meta_file()
Stefan Sperling 7ac97322 2018-03-11T12:41:21 rename variable gotpath to path_got
Stefan Sperling fdf001a7 2018-03-11T12:28:15 add a proper definition for the worktree head
Stefan Sperling e350ead3 2018-03-11T12:23:28 create an emtpy base-commit file
Stefan Sperling 056e7441 2018-03-11T11:39:48 use a dedicated file for the work tree lock
Stefan Sperling ef99fdb1 2018-03-11T02:31:27 use flock(2) because open(2) O_NONBLOCK also enables non-blocking I/O
Stefan Sperling 73a5ef67 2018-03-11T02:15:34 lock meta data files in worktree correctly
Stefan Sperling 6d9d28c3 2018-03-11T02:03:45 implement worktree open and close operations
Stefan Sperling 2cb4bacb 2018-03-11T01:33:55 assume good path input in got_worktree_init()
Stefan Sperling 09fe317a 2018-03-11T01:33:02 add function to read worktree meta data file
Stefan Sperling 4d94df2d 2018-03-11T01:19:40 rename worktree set_head() operation to change_head()
Stefan Sperling 606778cd 2018-03-11T01:18:45 fileindex update function probably won't be needed after all
Stefan Sperling 577ec78f 2018-03-11T01:15:39 store a path prefix in the worktree; will be used for subtree checkout
Stefan Sperling 9dce68ed 2018-03-10T17:44:23 typo in comment
Stefan Sperling ed7464bb 2018-03-10T17:15:18 whitespace
Stefan Sperling 281294a5 2018-03-10T17:14:25 add stub for anticipated worktree function which updates fileindex
Stefan Sperling 99724ed4 2018-03-10T17:08:23 add a helper function which creates worktree meta files
Stefan Sperling 1451e70d 2018-03-10T16:51:30 stamp worktrees with a format number
Stefan Sperling f0e4a7b7 2018-03-10T01:03:31 indent long line
Stefan Sperling 86c3caaf 2018-03-10T00:22:23 add worktree skeleton code; implement got_worktree_init()