errors on revert propogate to dirstate
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Bazaar |
Fix Released
|
High
|
Robert Collins |
Bug Description
# setup initial layout:
bzr init bzrcrash
cd bzrcrash
touch a.py b.py
mkdir sub
touch sub/c.py
bzr add
bzr ci -m"initial revision"
# move code into pkg/, the wrong way
mkdir pkg
mv *.py pkg
mv sub pkg
# oops! I should have used "bzr mv"... try to fix my mistake, take 1
bzr revert .
bzr mv *.py pkg # "ERROR: Could not move to pkg: pkg is not...
# oops! bzr tracks directories, so I have to add the directory first
bzr add pkg
# oops! that recursively adds all the files already in pkg, so now I
# have a.py and pkg/a.py -- get rid of the duplicates in pkg/
rm pkg/*.py
rm -r pkg/sub
# ok, *now* I can get bzr to move my files, right?
bzr mv *.py pkg # ERROR: Could not move a.py => a.py:
# argh: just rm'ing the files did not remove them from bzr's radar, of
# course. duh. rewind again.
bzr revert .
# errors bzr: ERROR: An inconsistent delta was supplied involving
# 'pkg/sub'
# reason: The file id was deleted but its children were not deleted.
bzr status
# errors.
making high because we permit the disk state to be corrupted.
affects bzr
importance high
Changed in bzr: | |
status: | New → Triaged |
Changed in bzr: | |
milestone: | none → 1.18 |
status: | Fix Committed → Fix Released |
This is fixed in my apply-inventory -delta branch which makes the cleanup code a little more comprehensive.