Stepped On My Edit

Note: Wiki now uses the approach described in suggestion 2 below. This and all other variations have been tried by various clone implementors.


(EditHint: Basically the same ideas are repeated both here and at EditConflictResolution. Edit so those ideas are explained OnceAndOnlyOnce. )


I pressed the edit button on a page. Typed like a madman. James pressed the edit button while I was typing. Typed like the wizard he is.

I saved.

James saved.

My ravings destroyed, lost forever, gone. Probably good this time, but it could happen to you.

Two suggestions:

1. Locking. Hate this idea.

2. Version numbers. Original version was version 7. When I saved, wiki checks to see that the version being saved over is still 7. It is. When James (who is also editing version 7) goes to save, wiki sees that it is saving an edit of 7 over version 8. It realizes something is wrong, and asks James to integrate his ideas with the newer version.

3. (I lied about the two.) Differencing. If edits to a page were "linked in" to the page instead of written over it, maybe we could ... stop me before I win the Propellor Beanie.

Or, maybe it isn't a problem. But since it happened to me (ME!!), clearly it is. ;->

-- RonJeffries


It's happened to me, too, more than once. It's a problem.

I agree locking is not good here. I'm working on a WikiClone in Java, and plan to use both your (2) and (3).

CvWiki is another clone that's integrated into a version control system, which provides a variant on (3) - you can at least get your changes back. However, I don't believe it tells you that you need to do that, so it's only a partial solution. The only person with access to both sets of changes is the one doing the second save, and she sees exactly what she expected. She needs to be warned that she's wiped out more than she expected (ie 2) and prompted with the system's best attempt at a merged version (ie 3). She can then improve it if she feels like it. -- DaveHarris

By the way, I got a "timed out" message when saving this, which may mean it happened again. Sorry if I lost your changes, whoever you were. -- DaveHarris


And I thought that Ron was the one who overlaid my changes! Maybe we're thinking of two different incidents. (I left his response on DoTheSimplestThingThatCouldPossiblyWork intact because it was more eloquent than (and echoed) my missive. At least I thought I did.) I hope I'm not overlaying anyone's changes as I save this, but here goes.

One strategy I've tried is TypeItInNotepadFirst.

-- JamesCollins


I just rechecked DoTheSimplestThingThatCouldPossiblyWork. Ron's right; apparently, I did unintentionally overwrite his work. After he had unintentionally overwritten mine. I honestly did not mean to resave my text, as I preferred Ron's version.

Sorry, Ron. I really did like what you'd spent so much effort sharing. I feel like I'm BreathingSomeoneElsesAir?.

-- JamesCollins


The wikipedia has a good conflict catcher. It even tells you what part will be saved, and what won't - and it presents your rejected version in an editing pane, so you don't lose anything.

---

With both MozillaFirefox and InternetExplorer, hitting the BACK on your browser should take you back to the editing pane, with all your changes still present. Copy 'em into the copy buffer, note the diffs someone else checked in with QuickDiff, re-edit, and paste in your changes.

Works for me. -- ScottJohnson

-- EdPoor


EditText of this page (last edited April 20, 2008) or FindPage with title or text search