On Tue, 17 Oct 2006 21:00:51 -0400, Aaron Bentley wrote: > Jakub Narebski wrote: > > Well, that is another example while generation number is/can be global, > > any numbering of branches must be local-only. > > No. The numbering always follows the leftmost parent. So each revision > has a permanent (but non-unique) number. Aaron, thanks for carrying this thread along and helping to bridge some communication gaps. For example, when I saw your original two two diagrams I was totally mystified how you were claiming that appending a couple of nodes and edges to a DAG could change the "order" of the DAG. I think I understand what you're describing with the leftmost-parent ordering now. But it's definitely an ordering that I would describe as local-only. That is, the ordering has meaning only with respect to a particular linearization of the DAG and that linearization is different from one repository to the next. > > ...but that means that revision numers are totally, absolutely useless. > > Unless by some miracle of engineering, or adding namespace, they can be > > made unchangeable. > > No, because no one pulls unless they're trying to maintain a mirror of > the other branch, or else they decide to throw their local history away. If in practice, nobody does the mirroring "pull" operation then how are the numbers useful? For example, given your examples above, if I'm understanding the concepts and terminology correctly, then if A and B both "merge" from each other (and don't "pull") then they will each end up with identical DAGs for the revision history but totally distinct numbers. Correct? So in that situation the numbers will not help A and B determine that they have identical history or even identical working trees. So what good are the numbers? I can see that the numbers would have applicability with reference to a single repository, (or equivalently a mirror of that repository), but no utility as soon as there is any distributed development happening. -Carl
Attachment:
pgpes3GUsh6Wh.pgp
Description: PGP signature