Commits


call get_worktree_paths_from_argv() after unveil(2) where possible


use get_worktree_paths_from_argv consistently; improves add/rm edge cases Double 'got rm' becomes a no-op like double 'got add' already is, and 'got add' of an already staged file is now an error.


add some additional short aliases for got commands


initial 'got unstage' implementation


implement got diff -s


add basic stage support to 'got diff' + add 'got stage -l'


make 'got status' indicate changes relative to staged files


pass staged blob ID to status callback


show staged file status separately in 'got status'


report staged status via status callback


add 'got stage' command


fix 'got revert' with new realpath(3) ENOENT behaviour


cache path length in struct got_pathlist_entry


forbid editing the history of branches outside of "refs/heads"


fix a bug in 'got branch' and add tests for this command


add 'make release' target; programs now have a version number


prevent 'got commit' on branches outside "refs/heads/" (the only exception is the work tree's temporary histedit branch)


remove pointless output parameter from got_pathlist_append()


add support for multiple path arguments to 'got commit'


rename "histedit list" to "histedit script" (on-disk filename changed)


abort histedit operation if we don't manage to install the script


improve histedit script error checking and fix leaks


speed up 'got rebase' ancestry check


speed up rebase and histedit path prefix check: skip blob content diffs


make 'got update' accept mulitple path arguments