[Newbies] Collaboration with Squeak 2.8

Ralph Johnson johnson at cs.uiuc.edu
Tue Jun 22 11:19:16 UTC 2010


On Mon, Jun 21, 2010 at 9:59 PM, Clinton Blackmore
<clinton.blackmore at gmail.com> wrote:
> Greetings again.
> I'm hacking on Scratch, which is based on MIT Squeak, which is based on
> Squeak 2.8.  I want to collaborate with others on a project.
> Monticello appears to require Squeak 3.1 or later.  Is there a way for me to
> upgrade an image?
> If not, is there a sensible way to use a revision control system?
> It appears to me that:
> 1) collaborators could each create change sets, and e-mail them to each
> other, for every one to file in (which sounds like it would be confusing;
> surely I am not understanding something)

This was how all Smalltalkers worked in the 80s.   OTI created Envy to
improve the situation, and Cincom eventually replaced Envy with Store,
and of course Squeak got Monticello.  There is a good reason why
people built these systems; change sets can be a pain in the neck.
But it is possible to manage version control with change sets, it just
takes some discipline.  E-mail is NOT advised as the main way of
sharing.  You need to have a shared file system.  You must keep a list
of all the change sets and the order they are to be filed in.  When
you want to "commit a change", you not only put your change set in the
repository, you add it to the list of change sets to be filed in.

On my first big Smalltalk project, our list of files was embedded in a
Smalltalk script that acted like a makefile. We'd execute this script
and it would file in all the change files and so build an image for
us.

Another thing is that we named our change sets something like
"Modulename-author-date.st" to ensure that two people didn't make
files with the same name, and to give a hint at the order they would
be filed in, though there were a few cases where we did not file them
in by date order.

Remembering the "good old days",
Ralph Johnson


More information about the Beginners mailing list