Commits


make 'got add' more forgiving about unversioned paths on the command line When users run 'got add *' the shell may pick up already versioned files and trigger errors about paths being in an unexpected status. Expand the check which previously only allowed files in added status to be double-added to cover the following status codes which are all safe to ignore: A M C m This should make bulk additions of files a bit easier in most cases. Problem reported by robert@ ok jamsek


expand test coverage of test_double_add a bit more


Implement fast-forward merges. Split part of got_worktree_merge_prepare into a new function, got_worktree_merge_write_refs, since that part doesn't make sense in the fast-forward case. ok stsp@


extend test_add_multiple to cover got add -R * behaviour


make 'got tree /' succeed in a work tree Previously, this command would trigger an error: got: /: bad path


update gotd_proc_names after session process unveil changes fixes "proc (null)" appearing in gotd logs


gotwebd.conf: unbreak max_repos_display 0 in 1a0c81fb61 I've added a range check too strict for max_repos_display, as zero is allowed and means "show all the repositories".


unveil repositories read-only in gotd session process while serving fetches ok op@


add a lock for the cleanup operation This adds the functions got_repo_cleanup_prepare() and _complete() to lock/unlock the repository to prevent multiple `gotadmin cleanup' or `git gc' operations to run in parallel. improvements and ok stsp@


remove items done in gotwebd and gotadmin


retire GOT_ERR_QUERYSTRING it's redundant with GOT_ERR_BAD_QUERYSTRING; convert its only use to the latter.


add myself in the AUTHORs section


update cleanup -p documentation


gotadmin cleanup can remove pack files now so update CAVEATS accordingly


do not try to explain implementation internals in gotadmin cleanup docs


there is no 'got tag -d' command, but cleanup docs can mention fetch -X


reorder paragraphs in gotadmin.1 cleanup section All the special cases are now being explained last.


slightly reword documentation of .keep files in gotadmin.1 for clarity


mention rebase/histedit -X options in addition to ref -d in gotadmin.1


gotadmin cleanup: remove redundant pack files improvements and ok stsp@


regress/cmdline: fix handling of unexpected success Diff from James Cook, thanks!


gather_on_disk_refs(): skip over bad refs noticed since gotwebd fails when there's a ref.lock file due to a concurrent update. discussed with stsp.


make gotd show relevant commit hashes in error message if ref-updates collide


make gotd avoid re-writing existing ref files when a ref-update is a no-op


dropping unnecessary strlen()s ok jamsek, stsp