In distributed configurations, the configuration for an synchronization between two partners is divided into two synchronization configurations – one at each partner.
Master and slave concept
One synchronization is configured as the master, and the other is configured as the slave. The master is the synchronization partner that defines the terms of the synchronization, the slave works within these terms.
In more detail, the master synchronization partner decides which issue types and fields are exchanged between the projects. It is also able to activate comment or attachment synchronization. The slave cannot create or delete mappings. However, the slave can still define what it shares, but only within the scope of the mappings defined by the master.
Both these roles must be fulfilled – it is not possible to have two partners configured as slaves, or two configured as masters. Before creating the synchronization, you should discuss with your synchronization partner about which side should be configured as the master, and which should be configured as the slave.
Once you have decided which synchronization partners are to be the master and the slave, you can start creating the synchronization. The slave can only create its side of the synchronization after the master has created its side.
After creating the synchronization, the master can start to configure the synchronization in detail by defining issue type & field mappings and how comments, attachments or workflow information should get synchronized.
After the master has made all its changes to the synchronization, it can publish it. When publishing, it must leave a message for the synchronization partner informing them of the changes you have made. It's important to make this comment informative, so the process is as clear as possible for your synchronization partner.
Backbone will then send a message to the slave including the updated configuration. The slave will not receive the actual field or issue type names - so your information stays private all the time.
As soon as the slave receives the message, the slave synchronization will have the ‘update required’ status. This means that the master has updated its configuration and that the slave has not yet configured them on its side. In order to apply the new changes the slave has to complete the new configuration at its side by editing the configuration. On the import screen, it will receive the message that the synchronization partner wrote when publishing its changes. The message should make it clear what changes they made.
When the slave has completed its part of the configuration, it can itself publish its changes and start their part of the synchronization. Backbone will send a confirmation back to the master that the slave completed its synchronization allowing to start the synchronization at the master's side as well.
So, now you know the concept and you're well-prepared to create a synchronization.