Jim Fulton Wrote:
IMO, a major disadvantage of CVS is that it is mostly "file" oriented. In many (most) cases, multiple files evolve together. It isn't correct to use a particular version file without using compatible versions of other files. CVS has a feature to tag collections of files to represent a configuration of files with compatible versions, but you don't get to provide meta-data for tags and tags are an advanced feature that seems somewhat "tacked on".
Zope, on the other hand, is transaction oriented. Zope tracks meta-data for transactions, not individual objects. This is a much saner approach, IMO.
I think that the basic underpinnings for this sort of development version control are present in Zope (the transactions), on feature I'd like to see in the Undo screen is some way to get at more of the meta data for a particular transaction - currently, the Undo screen shows you the method called, who called it, and when. However, usually, when I need to undo something, I'm thinking "I want to revert this DTMLMethod/Image/File to what is was..." i.e. I think about the object I've acted on, not how I acted on it. Sometimes that's encoded in the method URL, sometimes not. So, I guess if the transaction provided a view page that listed the Objects it modified, that'd be a big help. Hmm, I suppose I should go enter a wishlist bug... To continue the CVS comparison, the _next_ step is some form of diff - not only 'what Object changed' but 'how did it change?' Ross -- Ross J. Reedstrom, Ph.D., <reedstrm@rice.edu> NSBRI Research Scientist/Programmer Computer and Information Technology Institute Rice University, 6100 S. Main St., Houston, TX 77005