On Wed, Jul 30, 2008 at 06:03:29AM +0000, David Holland wrote: > fact that one occasionally does doesn't hamper development like the > lack of rename does. (Note to mention the various problems with > branches and branch semantics.) It turns out that one implies the other - it's much easier to talk about branch points when there's a single atomic revision to describe the entirety of the tree at the branch point. > > - merge tracking > > Yes, totally. Do you know if any of the free systems do a decent job > of it? darcs has some of the bits you need but I'm not sure it has all > of them. monotone has the only formally-proven (tree) merger, it uses standard three-way-merge on file content lines (with external tool assistance as required/configured); it turns out that once you've correctly identified the correct least common ancestor for each merge (which is what the fancy algorithms do) this works really well. codeville has a similar-but-different approach that evolved side-by-side with much lively discussion, we call it provably incorrect, but it apparently works well in practice and has certainly had a lot of good work by smart people. if you really want a system that supports highly detailed cherrypicking, you probably want either darcs or tla. if. Lots of the theoretical stuff is on revctrl.org, including the detailed discussion of merge algorithms. -- Dan.
Description: PGP signature