Drupal stores site configuration data in a consistent manner: everything from the list of enabled modules, through to content types, taxonomy vocabularies, fields, and views.
By default, the "active" configuration is stored in the database ("config" table). Configuration can be exported and imported as YAML files, either in its entirety, or a single piece of configuration, using Drush and/or Drupal Console config commands or the Configuration Manager (module core)
This allows you to deploy a configuration from one environment to another (as a precaution, Drupal checks the site is the same before importing, by comparing its UUID).
To check a site's UUID from the CLI (with Drush) : drush cget system.site
After synchronization is complete, all changes will be applied, such as enabling new modules, fields or content types
the configuration system is for syncronising settings between copies of the same site - that means matching UUIDs
https://www.drupal.org/node/2416545 Workflow using the Drupal UI