[squeak-dev] [ANN] Monticello 2.0.20

Colin Putney cputney at wiresong.ca
Thu Aug 14 01:40:17 UTC 2008


On 13-Aug-08, at 4:26 PM, Avi Bryant wrote:

> 1. For your project, create a separate file repository for each
> developer.  So, Lukas, if you, Colin and I were all collaborating on
> something, we would have lr.mcr, avi.mcr, and cwp.mcr.
> 2. Set up a script which rsyncs these three files to a shared
> location.  Each developer should have this script set up to *upload*
> their own mcr and to *download* everyone else's.
> 3. Commit to your own repository (I would commit to avi.mcr), and then
> run the script.  Or, have a cron job which runs it every few minutes.
>
> Since the project has all three repos added, everyone's versions
> should show up together in the UI.  Since each developer is only
> modifying his own file, there shouldn't be any conflicts at the file
> level.  Since the .mcr files are always only appended to, rsync should
> be able to update them quite efficiently (right?).  And although there
> would be some duplication (each developer's repo would contain its own
> copy of most of the method versions), it would be O(developers) not
> O(versions) as MC1 is.

I like it!

AFAICT, the only hitch is that the current version of MC2 will always  
commit to all repositories in the project. Clearly there are all sorts  
of situations where that's not the right behavior. So far I've just  
punted on that for lack of specific use-cases. So to make this work,  
we just need to make it possible to configure repositories as read-only.

I'll implement that and we can try it.

Colin



More information about the Squeak-dev mailing list