Commit Briefs
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@
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
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
regress: consistently use ed -s
didn't know about -s when writing those tests; saves some output redirection. ok jamsek
respect umask when creating or changing files and directories
This behaviour is already documented in got-worktree(5) but wasn't actually implemented. ok stsp@
histedit: make sure mesg is only used after pick or edit
It doesn't really make sense to use mesg after a fold or drop, or after another mesg. it currently "works" as intended, but the behaviour is confusing and not useful, better abort the operation as it's probably not what the user intended. Suggested by and ok stsp@
use test(1) -eq and -ne to compare integers, and reduce quoting
This brings the rest of the regression test scripts in line with patch.sh.
add test for merge result when lines are inserted at the top of a file
Based on a patch by Omar Polo
fix histedit_no_op test which was failing randomly
A no-op replayed history ends up having exactly the same commit IDs if all commits are created at roughly the same moment in time. There are no content changes involved so if commit timestamps do not differ then commit hashes will be the same. In which case there is no fork in history for 'got histedit -l' to display, yet the test was always expecting a fork in history to be displayed. Update the test to take this issue into account. The test will now pass no matter which result is produced by the histedit operation. Problem found by Lucas who observed that this test was randomly failing. Patch also provided by Lucas.