Once you've selected the top-level objects for your data deployment, Gearset will analyze your data model and present you with further configuration options to customize your data deployment. You can either tweak these options, or leave them as the default to accept Gearset's recommendations.
After clicking Next on the first configuration step of the data deployment, you'll be presented with the following page:
Step 1: How do you want to match existing records?
On the left hand side are the objects which you selected in the previous step. For each object, you can pick one of its fields to act as the external ID. When deploying records, Gearset will try to match records in the source and target using this ID. If the record exists in both the source and the target, the target will be updated to match the version in the source. If the record exists only in the source, it will be inserted as new into the target.
The ID field must be specified as an "external ID" or "lookup ID" field within Salesforce. If no such fields exist on the object, no matching of existing records will occur - all records will be inserted into the target as new.
Step 2: Which related objects do you want to include?
On the right hand side, related objects to the objects you selected in the previous step are displayed. By default, all of these will also be included in your deployment, but you can override this by deselecting the Deploy checkbox next to a particular related object.
As on the left hand side, you can also select which field to use as the external ID for each object.
The <object-name> object has special handling and will always be cross-referenced by Gearset
Some standard objects have specific requirements which make them hard to deploy (in particular, upsert doesn't work by default). These include User, UserRole, RecordType and Group. In these cases, Gearset will sometimes apply special handling to make sure that the deployment works correctly.
These records will be downloaded from both the source and target, and cross-referenced internally by Gearset (rather than by using Salesforce's external ID mechanism).
New User records will never be deployed by Gearset. If an OwnerId field on a record references a User that doesn't exist in the target, it will be left blank. This will have the effect of setting the OwnerId for that record to be the user carrying out the data deployment.