Commit Briefs
fix mistaken instances returning NULL instead of err
While here, for consistency, check dup() return value for -1 rather than < 0. ok stsp@
got: make fetch default to the work tree's current branch
As per stsp's todo item, if invoked in a work tree, make 'got fetch' default to fetching the work tree's current branch instead of the branch pointed to by the remote repository's HEAD. ok stsp@ and op@
make 'got rebase' work when the to-be-rebased branch has no parent commit
found by and ok op@, who also provided the test case
show worktree UUID in backout/cherrypick -l output
When run from the repository, display the UUID to help the user know which logmsg refs belong to which work tree. Also, use "backout" or "cherrypick" in the log message header to distinguish output from 'got log'. Suggested by stsp on irc. ok stsp@
add missed option conflict check for histedit -e and -f
Reviewed as part of previous commit adding histedit -d. ok stsp@
got: add 'got histedit -d' flag to drop all commits
Like -f, except drop all commits. Discussed with op and stsp on irc. ok stsp@
got: don't leave tmp "got-logmsg-*" files in the work tree
Reported by stsp on irc, and reviewed as part of the following regress commit covering the commit aspect of logmsg refs. Delete temp merge_log files if created during commits involving backed-out/cherrypicked changes. ok stsp@
improve heuristics for prepopulated log messages
Small tweak to cover the case where users specify paths to be committed such that none of the paths modified by a backout or cherrypick operation are in the commit. In this case, the logmsg ref will remain in refs/got/worktree to be used when the user does run a commit involving the affected paths. ok stsp@