How to sync configuration between multiple developers' environments D8 Configuration management is really awesome and easy to use when there's only one developer working on a project. We are running into challenges in keeping configuration synced between environments when more than one developer is introduced to a project at the same time.

Example:


Developer A is working on feature A. Exports configuration to their feature branch and pushes it to a shared develop branch.
At the same time, developer B is working on feature B and does the same thing - pushes feature configuration to the shared develop branch.


How do you import feature A and feature B concurrently?
Don't push to the develop branch directly. You should have a branch and merge strategy. If using GitHub or GitLab or similar, you would do a pull request of your branch to develop.

A common strategy (or one of) is the Git Flow workflow. Some links to explain Git Flow:


https://nvie.com/posts/a-successful-git-branching-model/
https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow


There are a handful of strategies, use whatever will fit for your team.

One of the few circumstances I ran into with merge conflicts was if someone was working on something touching the same configuration areas as another person.. we avoided this by just coordinating the work well.