Commits


make 'got update' bump the base commit ID of unchanged files This change makes it actually possible to get around commit-time out-of-dateness by running 'got update'. The test added with this commit shows that our out-of-dateness check is currently too simplistic; an update is required between any two commit operations! It would be better to allow commits to proceed until a situation arises where file content must be merged.


expand test coverage: partial update with parent dir as argument


make 'got update' verify that provided commit and branch match


add branch support to 'got update'


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


fix linear ancestry verification check for 'got update'


add support for partial updates, which affect specific paths only


add a test for wt rm vs repo rm


don't leave file as unversioned in case of wt edit vs repo rm


test and improve behaviour for wt edit vs repo rm conflict


use a better naming scheme for tree conflict tests


fix behaviour when update deletes an edited file


test conflict resolution in test_update_conflict_add_vs_add


treat 'add vs add' on update as a text conflict for now


fix another path ordering bug during status/update crawl


show commit id after update even if all files were missing


make 'got update' restore missing files


properly deal with "$?" in cmdline tests; fixes spurious test "ok"


clear executable bit when updating files if necessary


preserve executable bit on files during checkout and update


make 'got update' merge file edits


use path lists to sort dirent, tree object, and file index entries


fix test area name of test_update_creates_missing_parent_with_subdir


fix bug where update got confused by sub-sub directories


fix more bugs in the update walk and add more tests