Help:Edit Confict

From CS 160 Fall 2008

Jump to: navigation, search

This page discusses edit conflicts, and how to deal with them. To understand what an edit conflict is, consider the following situation:

  • Alice clicks "Edit this page" on a page.
  • Bob clicks "Edit this page" on the same page.
  • Alice finishes her edits and clicks "Save page". The page is saved with Alice's version.
  • Bob finished his edits and clicks "Save page". Bob gets an "edit conflict" page.

Contents

Layout of the edit conflict page

At the top is Alice's version of the whole page, even if Bob is doing section editing.

At the bottom is the text Bob was going to submit. This will be Bob's version of the page, if he edited the entire page, or Bob's version of the section he edited, if he was editing just one section.

In the middle is a diff of the two pieces of text. For the section Bob is editing it shows Bob's changes and Alice's possible changes, except what both have changed in the same way. For the other sections it shows the full new text as if all that text was added.

Bob can edit the upper text and press Save. In the case Bob was doing section editing this will be interpreted as the new version of the section, hence produce duplication of the other sections, unless Bob deletes them before saving. (This seems to be a bug.) The best solution in this case is to save your new text (e.g., to the Windows Clipboard), cancel out, then try again.

When pressing Save and the system is slow, one may be able to make another edit and press Save again before the system responds. This gives an edit conflict with oneself. In this case the upper text may be the old version instead of the one involving the first edit, i.e. the system notices the earlier change but has not processed it yet. A moment later. while one is looking at the edit conflict page, the first change is carried out in the background, and the upper text no longer is the current one. Hence, the diff shows the combined edit, and in the case of section editing, like before, the "addition" of the other sections.

Resolving an edit conflict

If Bob only made small changes, and Alice made large changes, he may choose to work from Alice's version, and re-merge his changes in. Bob might choose to add some text like "via edit conflict" to warn Alice and others that he had to do this - Alice can then peer review his merging for accuracy.

If Bob made large changes, and Alice made small changes, he may choose to work from his version. One option is for Bob to copy the bottom text into the top text (or just copy over the one section of the top text, if Bob was section editing), with an appropriate edit summary (eg "via edit conflict, will remerge"). Then Bob can view the page history, determine Alice's changes, and re-apply them to his version, in a separate edit.

If both Alice and Bob made large changes, matters become complicated, and Alice and Bob just have to do the best they can. For example, if both Alice and Bob simultaneously add a large section of text on the same subject, then it may be best for Bob to submit his changes, and then for Alice and Bob to both have a look at the two versions and decide between themselves which version is better.

Bob should not just post his changes over the top of Alice's. We assume good faith - mistakes are occasionally made, and newcomers may not understand the edit conflict window. However, Bob must not routinely ignore edit conflicts. It is absolutely not acceptable for Bob to overwrite Alice out of laziness. We encourage contributors to double-check their merges by using the diff feature.


Mistakes

Sometimes mistakes will be made in the merging process, because Bob is human, and this may cause some of Alice's changes to be accidentally reversed. Logical edit conflicts aren't always immediately visible. Sometimes Bob may have good reasons for thinking that Alice's improvements aren't useful. In these case, Alice and Bob are expected to resolve their differences amicably.

If Alice made a small change, which Bob accidentally reversed, then Alice must not revert to her version. It is absolutely not acceptable for Alice to reverse Bob's major improvements to the page out of a desire to protect her minor improvements, or to punish Bob for his carelessness. This is particularly important if the page has subsequently been edited by, say, Sarah and Jonathan.

The best approach for Alice in this circumstance is for Alice to edit Bob's version, reinstate her minor improvements, and leave Bob's major improvements intact. She may also add something to the edit summary to indicate that she had to do this - for example: "Reinstating link which Bob accidentally removed". Bob should then apologize to Alice for his mistake, and thank her for reinstating her improvement.

If Bob repeats his error, then the best approach is for Alice to have a friendly word on his talk page, point him to this page, and ask him if he could take a little more care in the future. This is particularly important for newcomers, who may not understand the correct way to resolve edit conflicts, though even experienced users may need the occasional friendly reminder.


Prevention

Because edit conflicts are irritating and time-consuming, you may choose to alter your editing habits to render them less frequent: aiming to reduce the amount of time between you click "edit page" and click "save page" when you finish your editing. This can be achieved by composing your paragraphs in a word processor, then copy & paste it to the class wiki as a whole.

Another means of avoiding edit conflicts is to make a single larger change, rather than frequent smaller changes: this makes it more likely that you will get an edit conflict, but less likely that you will cause others to get an edit conflict. Using the "Show preview" button helps here.

Personal tools