[Pmwiki-users] Brainstorm (Page Locks)

Patrick R. Michaud pmichaud
Tue Apr 13 13:19:07 CDT 2004


On Tue, Apr 13, 2004 at 08:14:22PM +0200, Nils Knappmeier wrote:
> Patrick R. Michaud wrote:
> >Actually, I was going to implement it such that the second author would
> >get a message that the page changed even if the merge didn't detect a
> >direct conflict.  Some edits might semantically conflict even if they
> >don't directly conflict (e.g., if the second user makes reference to 
> >something that was deleted by the first user).
> >
> What happens, if there are more then two users editing the page? I don't 
> know how likely that is. But does diff3 still work then? What does diff3 
> actually do? How does it compare the files?

PmWiki doesn't really think of things in terms of "users" -- it just
looks at things in terms of edits.  Essentially, whenever you go to edit
a page, the page form contains a timestamp indicating when you received the
version of the page you're editing.  When you save the edits, PmWiki 
first looks to see if the page has been changed by anyone since you
received the version you edited.  If not, your changes are saved immediately
and things are just like normal.  If the page has been changed by anyone, 
then a diff3 is performed between the original version you edited, the 
current version of the page that exists prior to your saves, and the 
version you're currently trying to save.

It doesn't matter how many edits took place behind the scenes while
you were working on your changes, because the diff3 is always based on
the latest version of the page, which could be the result of multiple edits, 
and the version that was in effect when you requested the edit,
which PmWiki can deduce from the timestamp of the original edit. 

Pm



More information about the pmwiki-users mailing list