[ANN] Monticello Versioning

Daniel Vainsencher danielv at netvision.net.il
Thu Jul 24 19:41:12 UTC 2003


I think we're using "identify" too loosely. I assume the one-to-one
identifier for versions is the id it already includes, and I don't
propose to change it. I propose that when package become published in
some way (maybe the move you mention to a public server), the package
file have added a field that includes a pointer to a publically
retrievable copy of the same version. That there are actually different
urls that hold the same copy doesn't matter - the value of the url is in
being a authoritative reference (a copy of me is there, implying that my
author has rights to write stuff there).

What I am saying is that this is enough for collaborating, a single
repository is not needed. Users, btw, certainly don't need a single
repository, because the'll use SM as the centralized catalog. Though
they might come to trust package that have urls coming from some
authoritative repository more than others.

My 2 agorot. Avi is probably right that we'll all be wiser after a few
projects are actually using it.

Daniel

Julian Fitzell <julian at beta4.com> wrote:
> Daniel Vainsencher wrote:
> > Avi Bryant <avi at beta4.com> wrote:
> >>- it certainly might end
> >>up being a useful piece of info for versions to be able to carry around.
> >>
> >>For practical purposes, however, there will probably be a single directory
> >>online somewhere that is the reference repository for a particular
> >>package; 
> > 
> > Why should there be such a thing? people can each publish on their own
> > publically viewable web space gotten through whatever means
> > (university/work/"I own an ISP"), with nothing but the release catalog,
> > SM, being centralized. This seems perfectly feasible right now, without
> > webdav support.
> 
> Well, to do a merge you want to find a common ancestor (preferably the 
> most common one).  The nice thing about a distributed repository system 
> is that you can maintain your own for your company (or on your laptop 
> while on the plane) but you can push them into a public repository 
> later.  So it may be a disadvantage to identify a version by URL.  You 
> certainly could provide a URL to a version, but I think their could be 
> many URLs that would give you the same version (uniquely identified by 
> UUID).
> 
> So it's likely that a project would have a "public" repository of 
> versions that have been published.  Developers might have their own 
> repositories and they might list each others' repositories as places to 
> look for packages, but end users would likely only have the public 
> repository in their lists.
> 
> That's the vision we've been talking about anyway.  Not that there's 
> anything in the MC model that forces that particular view - that's just 
> what we've been moving towards as I understand it (and I say we loosly 
> since I've been talking to Avi and Colin a lot about it but not really 
> contributing much code recently :).
> 
> Julian



More information about the Squeak-dev mailing list