Bazaar for a web-based CMS

Ralf Kistner ralf.kistner at gmail.com
Tue Dec 16 13:48:07 GMT 2008


> > Would this model work?
> 
> 
> I'd tend to say yes. Though there's a problem with resolving the
> conflicts. It sounds like you want to handle that automatically. That's up
> to you then, I guess. Commonly, conflicts have to be resolved by the user,
> which somehow interferes with the idea of the CMS hiding the
> implementation details of saving the changes from the user.
> 

I'll probably give the user a choice between keeping his file or the other file - anything else might get too complicated.

> You may also have to lock the main branch between the merge and the push
> steps. That way you can guarantee that the main branch hasn't changed
> again, after merging the top revision.
> 
> 
> > How does concurrent operations work in Bazaar? What happens if two users
> > try to commit (different files) at the same time?
> 
> 
> Yeah, I'd like to know that, too. Supposedly it is first come, first
> serve. The next one to commit will get the error message that his branch
> isn't up to date or something.

This might cause scaling problems - if too many users are committing together, they'll keep getting errors then - even when they're working on completely different files. I guess I can either assume my site will never grow that large, or implement some queue mechanism. Are there any better approaches?

> > One problem I have with this model is that it might not scale well: if
> > there are thousands of pages and many users, it's not ideal to keep a
> > complete up-to-date branch for each user. So is it possible at all to only
> > store the modified files in the user branches?
> 
> Talking about only storing the modified files, that's exactly the idea of
> a Stacked Branch. Though I'm not sure you really need that for your
> approach.
> 
> 

Thanks for the suggestion - I did a few small tests, and stacked branches seem to work well. As I understand it is functionally the same as a for normal branch, except that the previous history is not stored locally? It still creates a working copy of every file, but I guess I can live with that.

Thanks for the help!

Ralf




More information about the bazaar mailing list