Drupal 8 has a really great configuration synchronization system, and is great for syncing up different environments. When creating new modules and adding new fuctionality I really enjoy working with Drupal 8's configuration synchronization tool. Not only does this tool take the guesswork out of updates that need to be made on other environments. The configuration synchronization also allows for all changes to be documented.
New Modules and New Functionality
The Drupal 8 content synchronization tool paired with Drupal 8's update hooks are great ways to make all of the new changes portable and documented. I have adopted this methodology when moving out changes from environment to environment. Pairing this methodology with a deployment guide and taking out all of the guesswork of what needs to be updated.
Uses for Configuration Synchronization
Types of changes that Drupal 8's configuration synchronization tool are good for:
- Block Configuration
- New Content Types
- Updating Content Types
- Adding New Fields to Entities
- Adding or Updating Views
But I also have a love-hate relationship. When an installation of a modules gets conflicted with the synchronization then there are headaches, but overall the configuration synchronization is really great. Once they are worked through then all the headaches are eliminated, usually, just need to rework the install() and uninstall() hooks for the module.