Duplicating and merging

Duplicating a canvas

If you have permissions to both edit a canvas and create canvases in the same project, you can access the Duplicate canvas option from the canvas File menu (or by right-clicking a canvas from the project canvases list):

When a canvas is duplicated:

  • All of the canvas contents are copied, including any uploaded CSV files

  • The caching and scheduling settings of the new canvas are inherited from the parent canvas

  • The new canvas will always be unlocked by default

  • The new canvas inherits any tags from the parent canvas

Merging changes

A canvas that was created by duplication is a "child" canvas of its "parent" (source) canvas. In this case, it is possible to atomically apply many changes at once by merging the child into the parent.

Merging is helpful when you need to make changes to a widely-read canvas or report without interrupting the experience for viewers of that document - just duplicate it, make your changes in private, and merge the updates when they're ready. Any viewers will receive the merged changes applied in a single step, and can continue uninterrupted.

Child canvases show a Merge changes button in the navigation bar:

This option is available if:

  • You have an analyst role in the child canvas.

  • You also have an analyst role in the parent canvas.

  • The parent canvas has not been deleted.

After confirming the merge:

  • The duplicated canvas will be moved to the trash.

  • A new version will be saved for the parent canvas.

  • The contents of the parent canvas will be replaced by the contents of the child canvas - for example, objects that don't exist in the child canvas will be deleted.

  • Anyone else viewing the parent canvas will see the updates immediately, whether it is locked or unlocked.

If the parent canvas is unlocked and being actively edited while a merge happens, any in-progress edits will be applied after the merge has completed, so the final contents of the parent canvas may be different to the contents of the child canvas.

To be sure that concurrent edits cannot occur during a merge operation, ensure that the parent canvas is first locked.

Last updated