del transaction before lock before wlock
This way rollbacks happen while the repo is still locked.
Deleting lock before wlock is not strictly necessary, but is
more consistent with the locking order.
adding dir/bar
adding foo
dir/bar
foo
adding dir/bar_2
adding foo_2
dir/bar_2
foo_2
adding a
adding c
adding b
adding d
removing a
removing c
recording removal of a as rename to b (100% similar)