Commits


trim directories in got remove -R This is a racy solution that needs to be properly implemented in the future. ok stsp


fix a bug where 'got revert -R' failed on added subtrees The command could fail with "got: no such entry found in tree". This problem is reproduced by the regression test added in this commit. This happened because file index entries were processed in the wrong order by diff_fileindex_dir(). To fix this, keep removed entries in the RB tree and skip them when the file index is written out, rather than removing entries from the RB tree immediately causing side-effects for RB_NEXT and friends.


do not display unversioned files during 'got revert -R'


trim trailing whitespace in revert.sh (patch by Tracey Emery)


make 'got revert' to ignore unversioned files instead of aborting with 'bad path' and add a regress to check the revert isn't aborted anymore


fix race condition in test_revert_patch_one_change


fix bug where 'revert -p' would delete all lines following a reverted change


test reverting the first hunk only with revert -p


implement 'revert -p'


implement got revert -R


implement revert with a status walk to prepare for 'revert -p'


fix 'got revert' on files in newly added subdirectories


allow multiple file path arguments for 'got revert'


test and fix 'got revert' with a path in a sub-directory Relax input path requirements of got_object_id_by_path() to make things easier to callers. Allows the revert code to pass a path from the file index in lieu of a repository path.


use cmp -s, instead of cmp, in all command line tests