Comment 5 for bug 93681

Revision history for this message
John A Meinel (jameinel) wrote :

This seems to be an odd mix of having the directory disappear underneath us. Because after failing the first commit, doing "bzr commit" again will succeed.

Also, if you call "bzr rm dir" after resolving the conflicts, rather than just deleting the directory, it works.

I was able to reproduce this without a merge. You just need a moved file that is then removed from the directory on up.

% bzr init a
% cd a
% mkdir dir
% echo foo > dir/foo
% bzr add
% bzr commit -m "foo"
% bzr mv dir/foo dir/bar
% rm -rf dir
% bzr commit -m "deleted"
### Assertion Error
% bzr commit -m "bar"
deleted dir
deleted dir/foo
Committed revision 2.

The reason this was triggered by the merge is because the conflict actually causes a rename from dir/file => dir/file.THIS. (And as another bug the 'bzr resolve dir/file' actually deletes the dir/file.THIS)