Commits


Make 'got add' always require the -I option in order to add ignored files.


allow obstructed files skipped by 'got update' to be updated again


fix a bug where files skipped by 'got update' could not be updated again ok semarie@


switch from SIMPLEQ to equivalent STAILQ macros The singly-linked tail queue macros were added to OpenBSD 6.9 and are more widely available on other systems. ok stsp


new -I option for 'got status' to show files which match an ignore pattern


fix bogus 'permission denied' error when a file at work tree root is removed ok naddy


use Patience diff for merging during cherrypick/backout/histedit/rebase This has been shown to prevent mis-merges in some cases. It's probably not a final solution. We should look at what Git's "recursive merge" is doing and implement something similar. Keep using Myers during update/unstage. The advantage of Myers is that it produces smaller conflict chunks, and there are no known cases of mis-merges which affect update/unstage.


check for close(2) error in got_repo_close() and propagate errors up ok tracey


fix unrelated changes being merged by got cherrypick/backout/rebase/histedit This was a long-standing and very annoying bug. The two xfail tests in the cherrypick test suite are passing now.


switch merge_file_cb() to using merge_file() instead of merge_blob()


decouple merge_file() parameters for 2nd derived version and merge target file


in merge_file(), remove allocation of a base_path which is unused


move merge_file()'s f_deriv parameter next to the f_orig parameter


make merge_file() accept FILEs instead of paths for orig and deriv inputs


refactor merge_file() such that it no longer requires a blob object parameter