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