Envy or Store or what?

goran.hultgren at bluefish.se goran.hultgren at bluefish.se
Tue Oct 29 07:46:43 UTC 2002


Hi all!

Just two notes and a dream:

Note 1: I did the sqcvs implementation as a "for fun" project. It was
never meant to become "The Way" of dealing with Squeak sources. In fact
- it can be used for anything that you want to store in CVS. So from
this viewpoint I think sqcvs is interesting in it's own right. And also
note that you do not need to have files on the client - it works with
any model that implements a simple protocol! For example, I have a
nested Dictionary with String->String pairs or other Dictionaries in it,
thus mimicking a filesystem (filename->file content and subdirectories).
Pretty cool.

Note 2: I really like the "work model" of CVS compared to Envy and
similar pessimistic systems. I am no Envy expert but I have used it in
VW a long time ago and also in VAJ. My experience is that sure, the
power of it is tempting but it still gets in my way! I tend to spend
quite a lot of time messing around with versions, releasing versions,
ownership, yadda, yadda... With CVS I just update and commit regularly.
In short I do ctrl-u (WinCVS) and ctrl-m and type in a commit message.
When it all comes down to practical work the automerge combined the
optimistic model really rocks IMHO. I would also say that the CVS
workmodel fits much better with XP than the control-freak-model of Envy.
IMHO. On a big 5000 class/11 developer project I worked on we really
loved the way CVS set us free when we introduced it. All that manual
merging work just disappeared.


Dream:

So... personally I would like to create a Squeak/Smalltalk specific
repository solution using DVS (for declaring packages and perhaps more)
combined with a nice Comanche based server perhaps that can do tags,
branches and Smalltalk-smart-automerge (not the silly "Are these lines
too close?") and a few other things that really is useful. And make the
backend storage pluggable and let the first implementation use Magma.

Then add a nice smart diff/conflict resolution browser tool and some
"collaboration bells and whistles" (like knowing more about where people
are hacking/looking etc) and nirvana is pretty close to me. Perhaps we
could do a bit of "brainstorming" around this at OOPSLA Avi? So many
things to do over there... :-)

regards, Göran



More information about the Squeak-dev mailing list