Git based, single user

Since BreezeCMS is file and git based, working with it is very similar to working with code or other git based projects. Ie the idea of commits and changesets is very important.
Another side effect of the file based nature is that it is tricky for two people to work simultaneously on the same website. We go into details below how breeze help with these issues.

Change tracking

Breeze logs all actions, ie changes, additions and deletions, and if available also logs the editor.
To avoid users making incompatible changes at the same time, the last edit is always prominetly displayed in the top right.

changes_button

Change indicator

Displays when changes where last made and by whom

changes

Change summary

Lists all changes and let's you commit

changes small

Changeset

Above picture shows the set of changes made.
You can then commit the changes with the small form, which is located below the summary. There is also a button to reset when all changes are discarded.

It is good practise to make related changes that cover maybe an hour or two of work, and add a concise message describing the changes.

Because breeze is more or less single user, it is goo to get into the habit of committing changes at the end of the session.

Multi-user

While for the most part it is only really safe to have one editor use BrezzeCMS at a time, it can be worked around by developers who know what they are doing.

The problems occur are two-fold: conflicting changes, and id generation. While avoiding both, especially small changes can be made simultaneously.

Every developer will understand conflicting changes easily, as it is the same as in coding. Making changes to distinct sections for example should normally work. Or cards and sections, or one changing texts, another editing images.

Breeze generates ids for sections, cards and images in a sequential manner. So two people adding elements of the same category on different machines, will create conflicts that are difficult to resolve. But as long as id's are generated for different elements, no conflict will occur. Also deleting (and as above editing) can be done simultaneously.

So as long as there is only one editor or one translator per language, things are safe. And developers can still make minor corrections while adhering to above restrictions. All in all the restrictions are no problem for the kind of small teams BreezeCMS is made for.