In CloudCannon, conflicts arise when multiple people try to update the same file or part of a file in a way that conflicts with each other. When CloudCannon detects a conflict, it is important to resolve it by choosing which version of your file to keep.
Conflicts aren't dangerous to your content or website — they're CloudCannon's way of letting you know that there are two versions of your file, and that you need to choose how to proceed.
There are two types of conflicts you can encounter in CloudCannon:
- Publishing conflict — When changes to a file on your Site conflict with incoming changes to the same file from your Publish Branch.
- Syncing conflict — When unsaved changes to a file on your Site conflict with incoming changes to the same file from a different CloudCannon Site or your git repository.
CloudCannon will warn you when it detects a conflict using a notification in your Site Navigation, in the Review changes modal, or on the Publishing page.
Publishing conflicts#
Publishing conflicts can occur when you connect a Publish Branch to your Site. A Publish Branch is the copy of your Site to which you publish your changes. Connecting a Publish Branch allows you to work on your website using a separate copy without your changes going public until you are ready.
Multiple Sites can contribute to the same Publish Branch. A publishing conflict occurs when you or a team member have updated the same file on different branches that contribute to the same Publish Branch. When one Site publishes to the Publish Branch first, the other Site must update. CloudCannon will detect that there are conflicting versions of the same file and ask you to resolve this conflict by choosing which version of the file to keep: the changes on our current Site, the incoming changes from the Publish Branch, or a hybrid of the two.
Let's go through an example.

In the diagram above, three Sites contribute to the same Publish Branch: one for writing a new blog, one for removing a product page, and one for updating the Site navigation. Deleting the product page and updating the navigation both require our team to make changes to the /products/
page: one team member removes a link from that page, and another renames the page to /services/
, effectively deleting the /products/
page and replacing it with the new /services/
page. These changes conflict with each other.
The team member updating the website navigation finishes first and publishes their changes to the Publish Branch: "Staging Website."
We are working on removing the product page, and before we can publish it to the staging website, CloudCannon will prompt us to update from our Publish Branch. When we try to update, CloudCannon detects conflicting versions of the /products/
file: on our Site, we have changed a link, but on the Publish Branch, the /products/
page doesn't exist anymore.
Before we can publish our changes, CloudCannon requires us to choose which version of the file to keep. For more information, please read our documentation on resolving publishing conflicts.
Syncing conflicts#
Syncing conflicts can occur when multiple people edit the same file on the same branch but not on the same CloudCannon Site. There are two ways to edit the same branch without being on the same CloudCannon Site.
One, you could connect the same branch to more than one CloudCannon Site. Normally, each branch in your Git repository is connected to one Site in CloudCannon. However, you can connect multiple CloudCannon Sites to a single branch if that suits your workflow (e.g., you have multiple websites in a single Git repository, or "monorepo").
Two, you could edit the same branch using a CloudCannon Site, your local development environment, or directly through your Git provider simultaneously. It's common for content creators to use CloudCannon to update their website, while developers use their local development environment or Git provider.
CloudCannon is constantly monitoring your branch in your Git repository, so when someone saves a change to the branch, all CloudCannon Sites connected to the branch will sync that change. A syncing conflict occurs when you have unsaved changes to a file, and CloudCannon tries to sync an update to that file from your Git repository. To prevent incoming changes from your Git repository from overwriting your unsaved changes, CloudCannon will stop attempting to sync your files and alert you to the syncing conflict.
Before we can save any changes to other files, CloudCannon requires you to choose which version of the file to keep by attempting to merge the incoming changes with the unsaved changes or discarding your unsaved changes. For more information, please read our documentation on resolving syncing conflicts.