Collaboration in Confluence got a massive boost in version 6.0 when Atlassian added support for collaborative editing – up to 12 users can edit one Confluence page, all at the same time. By taking advantage of the Synchrony feature, they could see each other’s changes in real time, and everyone’s changes were merged when the page was published.
Updating and merging concurrent changes in diagrams is not as easy as with text. As any code or documentation merge-monkey in a large team knows, text can be difficult enough!
Many tools which support concurrent editing do Last-Write-Wins, where the most recent timestamp is used to resolve conflicts
But last-write-wins isn’t good enough!
Let’s say two people are working on an organization chart at the same time. When they opened the file, they could both see the departments, and now want to add the staff in those departments.
- X adds all of the staff members in all of the departments – it’s beautifully detailed. Then they save the diagram.
- Y got distracted by a coworker asking a question, and left the editor open. They come back to this task after a while, add just the department manager names, then they save the diagram.
In this instance, following the last-write-wins approach, Y’s organization chart ‘wins’ and the detailed information added by X is lost.
draw.io for Confluence Server merges changes
draw.io has found a very elegant and easy way for users to merge concurrent edits before saving in Confluence Server. This eliminates the probability that changes will overwrite each other.
So, how can you concurrently edit draw.io diagrams in Confluence server?
In the example below, I and a co-worker had the diagram open at the same time. I couldn’t see that they were editing it though!
I added new leaf nodes under the Content node, and then saved the diagram.