[ANN] Monticello Versioning

Avi Bryant avi at beta4.com
Wed Jul 23 18:10:22 UTC 2003


On Wed, 23 Jul 2003, Julian Fitzell wrote:

> I don't think MC needs a custom patch format.  Changesets are perfect
> non-declarative patch files already.  It would be nice to include the
> version they were made against (or between) in a comment at the
> beginning or something, just so you can go back and look at it if you
> like.  But I don't think it's actually of much use to MC because the
> file format is non-declaritive, so it won't be able to look for
> conflicts, etc. anyway.

Well, MC already has Patch objects that it uses internally.  What I was
picturing was a subclass of Version that stored a Patch instead of a
complete Snapshot.  As long as you had the base version accessible, you
could treat this just like any other Version - when you sent it #snapshot
it would just pull in the base version and apply the patch, then hand you
back the reconstructed Snapshot.  It's a space/bandwidth optimization,
which is the main reason people use patches, and I think is what Daniel
was asking for.

You convered the second reason people use patches, and I think you're
right that it should be handled through merging.  I haven't tried to work
through your four-way merge example yet but I don't see why we couldn't
hack support for that in... (lazy question: can a four-way merge be
modelled as three two-way merges?)

Avi



More information about the Squeak-dev mailing list