On 06/09/2011 08:38 PM, Junio C Hamano wrote: > Michael Haggerty <mhagger@xxxxxxxxxxxx> writes: >> Wouldn't the four trees described above contain information equivalent >> to the contents of the index? > > In the same sense that you can re-create the state in the index by running > the merge again between HEAD and MERGE_HEAD, yes, they probably do, but is > that a useful question to ask? The questions is obviously not useful if the only answer is the one that you give. But it seems to me that the four pseudo-trees NEXT, OURS, THEIRS, and BASE are a complete and self-consistent alternative representation of the information contained in the index. If this is true, then I claim that this representation would be much easier to understand and remember than the index stages (with its highly mnemonic names 0, 1, 2, and 3!) and the irregular myriad of commands and options currently needed to access it. > I think this mega-thread served its purpose. It started to explore "will > it make it easier to understand and explain if we use these tokens to name > trees that do not exist in reality?" which is a worthy thing to do. The > conclusion appears to be "well we do not even know what exactly these > tokens mean in certain situations." Why do you reach that conclusion? Are you claiming that the proposed definitions of the four pseudo-trees upthread are incorrect or insufficiently defined? We are about to introduce git at my company, and this is one of the points that makes me cringe when I think of explaining it to developers (let alone non-developers). Even here on the git mailing list, where most people are numbed to the git UI, there has been a lot of confusion about how to get needed information from the index. And I truly believe that the commands currently needed to access the information in the index are so nonuniform that half of the participants in this discussion will have to look them up *again* the next time they need them. Please throw us struggling users a bone :-) Michael -- Michael Haggerty mhagger@xxxxxxxxxxxx http://softwareswirl.blogspot.com/ -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html