Currently, the locking function of Drupal handles editing conflicts in a very heavy-handed way: "This content has been modified by another user, changes cannot be saved."
A future version could take a leaf out of the book of MediaWiki, which handles this much more smoothly: The current version of the article is shown above, the still unsaved conflicting edit in another text box below. This allows the user to easily paste the section they edited into the above text, merging the two versions by hand.
In contrast, having to copy the section, reload the page and resubmit is less convenient than it could be.
Comments
Comment #1
RobRoy CreditAttribution: RobRoy commentedFeatures go against the next version.
Comment #2
cburschkaThis would still be a nice idea. Specifically, I would like to give the diff module space to hook itself in to this page, showing the user what has been changed, what he has changed himself, and what the differences between the two new versions are.
This would be somewhat complex, admittedly.
Comment #3
mdupontComment #4
mitchell CreditAttribution: mitchell commentedThe revision system is now rewritten for entities, but I believe this issue still needs to be addressed. Tagging to bring this into the fold with issues like #1723892: Support for revisions for entity save and delete operations and #1776796: Provide a better UX for creating, editing & managing draft revisions..
Comment #5
mitchell CreditAttribution: mitchell commentedCross-referencing #1825254: Add Conflict module to Core and #1559578: D7 solution for when multiple users are updating an issue simultaneously.
Comment #6
sunSee also: #120955: Integrate Diff into Core
http://drupal.org/project/conflict was recently designed from scratch. Mainly for drupal.org issues, where we're facing massive editing conflicts every single day. It leverages modern core APIs only and implements an advanced 3-way diff algorithm, similar to the one found in modern version control systems à la git.
I don't know how mature it is, and as long as d.o hasn't be upgraded to D7, it is also not battle-tested in the field, but from all approaches I've seen thus far, it is by far the most sensible and cleanest design approach.
We should try to move Conflict module's functionality into core. (not necessarily an own module)
Comment #7
seanrHas there been any progress on this in other issues? What is the current plan for getting something like this into D8?
Comment #8
jhedstromFeature request => 8.1.x.
Comment #10
krina.addweb CreditAttribution: krina.addweb at AddWeb Solution Pvt. Ltd. commented