Describe the capabilities of and considerations when using change sets.
Change sets can be used to deploy functionalities between connected Salesforce orgs. They can contain a package of customized components such as apps, objects, fields, or reports. However, they cannot include any data such as object records.
Salesforce differentiates between outbound and inbound change sets. To deploy a functionality from one org to another, an outbound change set is created in the sending org. The receiving org will then see this change set as an inbound change set, and can validate and execute it.
Change sets can only be sent and received between orgs which are affiliated with a production org. Additionally, a deployment connection between the orgs is required, and each connected org must be authorized to send and receive change sets. This enforces code promotion paths defined in the development lifecycle and protects customizations from being overwritten by mistake.