Does each one of your team member work on a different local database or use a central shared DB?
Sharing DB files among team members is a bad sign and i have seen people losing their job by doing this because one day they destroyed part of the real DB. So please don't do this for your own good.
I highly recommend to play with dummy data by using migrations and seeds. Also you can create a Docker container and provide a solid development environment for your team members. So with a couple of commands or a make file the whole environment can start, reset etc without having to share DB files with others.
In my team, all team members have their own development environment (by utilising Vagrant or Docker) where they write and test code. Rather than sharing a database among, each environment has its own, making it far easier to use.
We do, however, use seeds (containing dummy data and images) in order to get the same content in each of the databases. This way developers don't have to manually add content to the database.
I think it's better to have one central database, and so that every member of the team can work with it. I think it'll be useful for teamwork. I recently prepared work on this topic and get the facts why this is important. I found examples and explanations of the importance of team cohesion and how it affects work efficiency.
everyone should have it's own. otherwise you break the system of someone else that's just frustrating.
Snapshots should be provided though. if you namespace your databases dev1_database, dev2_database you could import the others without breaking your own just by switching one configuration parameter :)
Josh Montgomery
web developer
Josh Montgomery
web developer
100% agree with j, each member should have a local environment to work off of so that you don't step on other peoples toes. As long as you have another environment (staging, QA, etc) to push to before production, you should have no issues.