Eric Kow writes: > At the risk of preaching to the choir, I decided to run this example > from Jason's Master's Thesis, the idea I'm hoping to convey being that > precision is important not just because of what it lets you do cleanly, > but because of what misleading things it lets you avoid. I guess it > would be hard to communicate this clearly though... The idea is that we > want to merge a file swap change with a change that modifies one of the > files. Does the right thing happen?
Be careful. I don't think "the right thing" is well-defined here. The fact that Darcs gives the most plausible answer (in a very implausible example) may be a point in its favor. But perhaps not; git's behavior, while implausible, is not completely unimaginable, and in fact makes it easier to give a plausible rationale for the very existence of such an example of swapping names for what started as identical content. You see, this situation is quite imaginable in XEmacs, where our console drivers for different GUI toolkits are very similar. With XEmacs I often duplicate files with C-x C-w (aka "Save As ..."), but this changes the default for future saves too, which I often forget. So I make a bunch of Xt-relevant changes, go "oh, nuts!", and swap the files using "mv". Now, git will get the merge right, putting Xt-related changes from the other workspace in the file named console-x.c, not in console-gtk.c, while Darcs would get it wrong! Also think "Java" where the name of the file reflects the class it contains content. Note that Darcs should do the same thing as git in the case where you use "mv" rather than "darcs mv". This is a definite point in its favor. That is, Darcs is more expressive, you can use the "mv" vs. "darcs mv" distinction to express whether the merging change should follow the content or the name. I'm still curious about examples where Darcs uses this information to accomplish a merge where other VCSes give up and announce a conflict. _______________________________________________ darcs-users mailing list [email protected] http://lists.osuosl.org/mailman/listinfo/darcs-users
