Partitions
Partitions: What's this?
articy:draft's multi-user approach centers around so-called partitions. To allow multiple users to work on the same project simultaneously and at the same time avoid conflicts, confusion or even data loss, users can only work on partitions that are claimed by them. A partition that was "claimed" by an user is exclusively reserved for this team member and can only edited by him/her.Even though you don't really need to worry about that, the following helps understanding the functionality of the multi-user mode: Each partition is represented by a single file in your local project folder. This file contains the partition's content, including the sub-structure and all topological information necessary to reconstruct the branch of the project structure "below" the partition. The same partition file is also stored in the server repository, safely guarded by either Perforce or Subversion. articy:draft synchronizes these two file versions, to upload your changes to the server on the one hand, and to download the newest data to your local project folder on the other. Now that you know that each partition is a file, it's easy to understand why repartitioning can only be done in exclusive mode: On file has to be split into two files, both on the server and across all clients, which requires all clients to perform the exact same set of operations on their local data. To make this failure-proof, articy:draft enforces a workflow that guarantees writing permissions on all files involved.
Locking state icons
Througout the entire application, articy:draft displays locking state icons to indicate whether an object is locked or not:Claiming state icons in navigator and in the tiles view

Claiming state icons in the navigator 1 and in the tiles view 2.
Claiming state icons in flow view

Claiming state icons on flow fragments in the flow view 3.
Child objects within partitions
While partitions have a circular claiming state icon, children have an upwards arrow to indicate that their claiming state depends on the one of a partition further up in the hierarchical project structure:Working with partitions
Partition commands
You can access partition commands (such as "update and claim" and "publishing and unclaim") in two different ways:
There's a section in the toolbar 4 with buttons for partition commands. Selecting an object makes partition command buttons in the toolbar become visible. The same commands can be found in all objects' context menus under Partition 5.
"Update"
If the above icon appears next to a partition in the navigator, make sure you update the partition. Updating means downloading the most recent version from the articy:server. The partition will not be claimed! Select the following button from the partition commands:
Click "Update" to download the latest version from the server. You can also click the update project menu entry in the main menu to get the latest versions of all partitions ("sync to head").
Select "Update project" from the main menu to bring your entire local project folder up-to-date."Update and claim"
You can claim available partitions for your exclusive access. The partition will then be read-only ("locked") for all other users. Before you can start editing, the latest version is automatically retrieved from the server. That's why it is called update and claim.
Click "update and claim" to start editing on the most recent partition version."Publish and keep claim"
Sends your local changes to server, but keeps the claim on the partition so that you can continue working.
Click the "Publish and keep claim" button to upload your changes to the server.
When publishing a partition you may want to enter a message of your own that explains your changes to the other members of the team. This message is written as "commit message" to the underlying repository system and can also be browsed with the repository's toolset (e.g. P4V for Perforce or TortoiseSVN for Subversion).For your convenience, articy:draft tracks all changes and suggests them as pre-filled text for this custom commit message. Both features, custom commit messages as well as automatic pre-filling, can be switched-off in the general project settings.
To gain an overview over the last changes on a certain partition see open change history
"Publish and unclaim"
Same as above, but with unclaiming the partition. Perform this command if you have finished editing the partition and wish to make it available again for other users.
Click "Publish and unclaim" to send your changes to the server and unclaim.Claiming / Unclaiming commands are accessible on hover over an object entry in the Navigator.

"Enforced unclaiming"
This option is only available for project administrators.If another team member cannot unclaim a partition himself, you can unclaim it using this command. Please note that changes made by the team member are stored locally on their machine only and will be lost. Use this command with care and only in cases of emergency.
Click the "Enforced unclaiming" button to discard another user's changes and break their claim."Discard changes to partition"
Changes made to objects are stored locally until you decide to "publish" them (see above).
If you wish to discard your changes to a partition and roll back to the original server version, while also unclaiming the selected partition, select Discard and unclaim
To discard your changes to a partition and roll back to the original server version, but keeping the selected partition claimed, select Discard and keep claim"Discard all changes"
The project partition 6, as well as the toolbar above the Navigator 7, provide a “Discard all changes” option that can discard changes on every partition, that is currently claimed by the user, simultaneously.
When selecting Discard all changes, a selection window opens, similar to publishing multiple partitions, where you can select which partition changes should be discarded 8 and if you want to keep your claim on these partitions afterwards 9.

"Open change history"
Clicking this icon opens a dialog window that shows the 50 last published changes to this partition.
Change history
Every partition now has a 'open change history' button. This opens a dialog window that shows the revisions of the last publishing actions along with the custom commit messages, the name of the changing team member and the change date.Creating partitions / changing the project partitioning
User-created objects aren't automatically considered "partitions", which means that they cannot be claimed individually. By default, only the top-level folders are partitions. If you require a finer granularity, you need to repartition your project. This can be done solely by a project administrator.
To open the repartition dialog click on this button 10 in the Navigator toolbar:

Within the repartition dialog you can turn mere folders and container objects like flow fragments into partitions 11. To turn an object into a partition you must claim it. Of course, you can also cancel current partitions to turn them back into usual objects.
All repartition actions are added to the queue on the right 12. To apply all actions within the queue click on "Apply all partition actions" 13.
If you want to keep the currently claimed partitions, you can enable the corresponding option 14.

