versioning

Avi Bryant avi at beta4.com
Thu May 9 23:39:07 UTC 2002


There was a tiny bit of discussion a little bit ago on team development in
Squeak and versioning systems.  I've spent the last few days hacking out a
lightweight system to allow Squeak to make reasonable use of file-based
SCMs such as CVS or Subversion, and I'm curious what people think of it.
The approach I took was to convert standard unified diff files into Squeak
change sets.  In other words, you use CVS or whatever to manage straight
fileOuts of your code, and when you need to update your image, you ask CVS
for a diff between the revision in your image and the current revision;
you can then file this diff in as if it were a change set, and the proper
additions, removals, etc, will happen.  There are a couple of issues with
this - you have to make sure the diff has enough context lines to contain
the complete source of any affected method, and it's not yet smart enough
to detect a class rename - but for the most part it works surprisingly
well.

You can grab the current code from http://beta4.com/dvs/DVS.st .  Check
out the class comment and class methods of DVS.  This is very new code,
I'll make a more official announcement once it's in better shape to
release.

Cheers,
Avi




More information about the Squeak-dev mailing list