crash: supplied history does not follow left-hand parents
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Bazaar |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
Variation on the screwed up history bug:
(rpg+helper) >bzr branch lp:rpg+helper edit_char_name
bzr: ERROR: bzrlib.
I remember what I've done to my repo to get here.
1. Create repo on website.
2. Associate with main dev on project.
3. bzr checkout lp:rpg+helper \bzrrepo\main (which was set up with --no-trees)
4. bzr checkout \bzrrepo\main virtualenv\
5. bzr branch virtualenv\
6. commit several times to tg2_setup
7. cd virtualenv\
8. bzr update
9. bzr qcommit
-- Things start looking very funny here --
10. Commit fails, b/c checkout of a checkout is apparently not OK.
11. rmdir /s /q virtualenv\
12. bzr checkout lp:rpg+helper virtualenv\
13. cd virtualenv\
14. bzr up
15. bzr merge ..\tg2_setup
16. bzr qcommit
-- Everything is all screwed up now. qlog shows a history on both lp:rpg+helper & virtualenv\
17. bzr branch lp:rpg+helper
-- The error happens. --
I've got a fairly short history, but managed to do several things wrong during it (I'm still new to bzr). I hope this helps you figure out what series of bzr commands is able to corrupt the history of a branch.
I don't know how I should go about cleaning the history on this project. I could blow away the main branch & start over - I've got the current files - but I really don't like doing that, even if I'd just lose a 4-commit history. At least, I don't want that to be the solution until I've also done something to prevent this from happening again.
Newer branch formats don't allow supplying a history that does not follow left-hand parents, and you can do "bzr reconcile" to fix a branch which does have this problem.