Commit Briefs

Stefan Sperling

CHANGES for 0.83 (tags/0.83)


Mark Jamsek

regress: commit coverage for the new logmsg ref feature

This tests we correctly: - use multiple logmsg refs in one commit; - use only relevant refs involving affected paths; - use refs when some of the affected paths are reverted; - neither use nor remove refs if all affected paths are omitted from the commit; - use refs when previously excluded paths are later committed. - remove corresponding temp merged_log 'got-logmsg-*' files hints and ok stsp@


Mark Jamsek

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@



Stefan Sperling

use VISUAL instead of EDITOR in histedit_mesg_filemode_change

VISUAL is preferred and relying on EDITOR may cause test failures in some environments. pointed out by op and jamsek



Stefan Sperling

fix histedit -m on a commit which only changes filemode bits

The commit was being miscategorized as a no-op change and dropped. Now the commit is retained and its log message is updated as expected. ok op, jamsek




Stefan Sperling

got.1: Mark the commit argument to cherrypick and backout optional

patch by Josiah Frentsos




Stefan Sperling

rename a variable for clarity


Stefan Sperling

clarify documentation of cherrypick/backout log message recording

ok jamsek


Stefan Sperling

uppercase cherrypick/backout -X progress output

ok jamsek


Mark Jamsek

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@


Mark Jamsek

fix invalid assumption in commit_path_changed_in_worktree()

Make sure we have a parent id first to avoid dereferencing a NULL pointer with the got_object_open_as_commit() call. ok op@ and stsp@


Omar Polo

extend test_delete_branch

- try to delete using git - try to delete multiple branches in one go - verify the ref-list reported by the server before and after the deletion suggested / ok stsp


Omar Polo

gotd: implement the delete-refs capability

Allow clients to run "got send -d" against gotd. Clients will send a zero-id as new id for a reference and, in the special but more common case of just deleting and not updating, no pack file will be sent. ok and tweaks by stsp@


Mark Jamsek

regress for new backout/cherrypick logmsg references

Tests only cover the -lX interface to list and delete logmsg refs created by previous backout and cherrypick operations. Further tests are needed for revert and commit coverage to ensure that the correct log messages of bo/cy commits are loaded into the editor when 'got commit' is run, and that only the refs used to populate the editor for the new commit are deleted. Potential printf issues observed by op remain in the diff; noted here as a reminder to do a sweep at some point in the future as there are other such instances in cherrypick.sh and possibly elsewhere in regress. Reviewed as part of previous commit introducing logmsg ref support for backed-out/cherrypicked commits. ok stsp@


Mark Jamsek

got: load editor with backout/cherrypick commit log messages

Create new logmsg references used to populate the editor with the log messages of backed-out and cherrypicked commits when 'got commit' is run. We use versioned path state heuristics during revert and commit commands in an effort to ensure the editor is only populated with the log messages of backed-out and/or cherrypicked commits involving paths with local changes that are being committed. This is an implementation of an initial idea and algorithm designed by stsp. inputs, improvments and ok stsp@




Omar Polo

remove \n from log message


Omar Polo

delete trailing whitespaces