Hello everyone,

Hope i'am in the right section....

I am a junior developer and I work on a Drupal 8 project with two other people. None of us know Drupal really well.
We work locally on our computer Wamp / PhpStorm / browser and GIT as version manager.

I can not figure out how to work to several persons with each database.
For php and file management, GIT is ok, but knowing that the configuration is stored in base, as each developer works locally, how to pool our SQL produced in mysql?

To backup database, Backup and Migrate module seems to be a good solution, but how to deal with it and three developers.
How to mutualize it properly ?

Are there specific modules or ways of working that are simple to implement?

Thank you in advance for your enlightening answers! And sorry for my english ;-)

Anita.

Comments

sprite’s picture

The following two companies have systems for Drupal multi-person development:

https://www.acquia.com/

https://platform.sh/

However, you will still need in depth knowledge of using the Drupal 8 config system, features system, and so forth.

spritefully yours
Technical assistance provided to the Drupal community on my own time ...
Thank yous appreciated ...

AndyD328’s picture

If it is just the site config you need to share then you can export it, add it to git, commit it and then import it on your next pull.

If you have drush or drupal console installed - and you should really have both - then you can run either 'drush cex' or 'drupal config:export' to get your current site config into the file system, you can now treat the config like any other file in git. Do your usual git add/commit/push/merge/... workflow. When your co-workers pull down your changes they will get your config changes as files. If they then run drush cim or drupal config:import they will get all of your config changes in their database, this will overwrite their changes so they will need to export & merge if they have something they want to keep.

Database content is a different matter and when we need real content and need it in our local dev to work on we have a separate site with a canonical database on a server we can all access and we sync down to get the latest content using 'drush sql-sync' as needed. Before doing this sync any config changes need to be exported and then imported after the sync.

As Sprite says there are services out there that solve this for you and make it simple, however, the above works fine too.

Miss_Anita’s picture

Hello Gentlemen,

Thanks for your clear and quick replies.

@Sprite: I will not have time to look precisely at these two systems but I keep them under the elbow for the next few times.

@Andy: thank you for your very clear post, who will help me for the sequel. And don't worry, we actually have the drupal console installed !
I think we will have that config part of the site to manage, otherwise we will do imports differently for database content.

I will try to give feedback on how we work, the positive and negative aspects of our method.

Thank you very much !

Anita