Comment 6 for bug 718723

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

I think I have a handle on this now. And I think this is actually a dupe, but I don't have the old bug number handy.

After doing your first stacked branch, you end up with a branch pointer, but no content in the repository. When you go to merge the bundle (or pull, or whatever), it creates revision X (with parent Y). However, the bundle only contains enough information to *just* represent X, and not recreate the inventory of Y. Our stacking logic says "for any revision in the repository, we must hold that revision's information, plus its parent inventory, so that we can compute the delta."

To do this from a merge-directive means that we need to:
a) Put more info into the merge-directive itself. We'd like to avoid bloating it, but if we want to treat it as a self-contained unit, then we need to.
b) Be able to fetch the extra data from our stacked-on location, or possibly from the extra meta-information in the merge-directive. (Often there will be a 'public' url where we can fetch extra info from.)