Documentation Menu

When two people edit

5 min read

When someone else saves a document while you are editing it, the dashboard refuses to overwrite their work and offers two ways on: reload their version, or compare both sides and save a result that keeps what each of you wrote.

Why Quillet refuses a save instead of locking

Two people open the same page in the morning. One fixes a price. The other rewrites the introduction. Without a check, whoever saves second silently wipes out the first person's change, and nobody notices until a reader does.

Quillet does not lock documents, because a lock left behind by someone who has gone home blocks everybody else. Instead, every save carries a note of the version the editor started from. If the document has moved on since then, the save is refused, nothing is overwritten, and you decide what the result should be. A person makes that decision because only a person knows whether two changes belong together.

What happens when your save is refused

The refusal

When your save is refused, a box headed This document moved on appears above the editor. Its message reads "Someone else saved this document — reload to see their version, then reapply your change." Your text stays in the editor, unsaved, and Publish stays unavailable until you have dealt with the conflict. The box offers two buttons:

  • Reload replaces what is in the editor with the latest saved version. If you have unsaved edits, it asks first, with Discard your changes? and "Reload replaces your unsaved edits with the version saved by someone else. You can put yours back afterwards." After Discard and reload, a box says "Your previous edits were discarded." and offers Restore them.
  • Compare and resolve opens a comparison that keeps both sides.

The comparison

Resolve the conflict takes the place of the editor. It starts with a sentence such as "Latest saved is v4. Both sides are shown against the version you loaded; the result is saved against the latest." Under that sentence come:

  • Latest saved: what the other person changed, as lines removed and added, compared with the version you started from. Unchanged lines are folded, such as "… 5 unchanged lines …".
  • Your edits: what you changed, measured the same way.
  • The details that differ, if any: Title, Order, Tags, Searchable or Schema, each with a choice of Yours or Latest. While the comparison is open, the Details card says "Metadata is chosen in the comparison while a conflict is open."
  • Result: the text that will be saved, in the document's own editor. It starts as your version.

Under the result are Save resolved version, Reset to yours, Reset to latest and Cancel. Once you have edited the result, a reset first asks Discard your result?, so a half-merged text is not thrown away by accident.

The saved result is an ordinary new version, and History shows it with the change note "Resolved a conflict with v4". If a third person saves while you are resolving, your save is refused again with "This document moved on again while you were resolving. Refresh the comparison and check your result." and a Refresh comparison button, while your result stays where it is.

How to

Keep both changes

  1. When This document moved on appears, press Compare and resolve.
  2. Read Latest saved to see what the other person changed, and Your edits to see your own changes.
  3. In Result, add the other person's changes to yours. The result starts as your version, so copy their lines in where they belong.
  4. If Title, Tags or another detail differs, choose Yours or Latest for each one.
  5. Press Save resolved version. The editor comes back with the result saved as the newest version.
  6. Publish when you are ready. See Publishing and history.

Take their version and start again

  1. Press Reload.
  2. If you had unsaved edits, read Discard your changes? and press Discard and reload.
  3. Make your change again, on top of their version, and press Save.

Back out of a comparison

  1. Press Cancel under the result. The editor comes back with your unsaved text, and the This document moved on box is still there.
  2. Choose Reload or Compare and resolve again when you are ready.

Limits

  • The comparison works line by line, for structured documents and pages too. JSON is not compared field by field: a page's fields are compared as lines of its JSON text.
  • There is no automatic merging. Even when two people changed different paragraphs, you put the result together yourself.
  • The check covers the content, not the details. A title, order, tags, searchability or component changed by someone else is not detected on its own: if two people change only the title, the later save wins without a warning. When a content conflict is found, though, the comparison does show every detail that differs.
  • Nothing warns you that someone else has the document open. You find out when you save.
  • Restore as new draft in History is not checked against newer saves: it writes the old content over whatever is current. Every version still stays in History.
  • Comparing and resolving works the same in every locale, but each locale is its own document. A German translation saved by a colleague never conflicts with your English edit.

Last updated