Commits


prevent rebase in a work tree with an incompatible path prefix


disallow 'got update' and 'got commit' while rebase is in progress


initial 'got rebase' implementation


introduce support for abbreviated object IDs


add 'got branch' command


add 'got backout' command


allow 'got cherrypick' with a root commit (adds all files in commit)


add 'got cherrypick' command


make moved branch head references easier to deal with


don't leak objects which can't be cached


improve wording of an error message


introduce got_error_path()


define message for error code GOT_ERR_DIR_NOT_EMPTY


make 'got update' verify that provided commit and branch match


rename got_error_prefix_errno() to got_error_from_errno()


fix linear ancestry verification check for 'got update'


implement spawning an editor to collect a commit message bails on empty messages, trims leading and trailing newlines this currently disables the unveil in the commit process because it's not compatible with spawning the editor also prevent commits when there are no changes


got_error_set_errno: take a char arg to pass to got_error_prefix_errno $> got rm a got: : No such file or directory becomes $> got rm a got: /path/to/a: No such file or directory


got_error_from_errno -> got_error_prefix_errno also add got_error_prefix_errno2 and got_error_prefix_errno3 which should hopefully all be merged into a single function with variadic args (but can't alloc mem)


error: introduce got_error_prefix_errno for better errno messages


ensure that commits use intended base blobs for changes


try to detect concurrent commits; not perfect yet (see comments)


require GOT_AUTHOR environment variable


add APIs to change references


WIP commit implementation