sql-serverversion-controlredgate

Redgate SQL Source Control recommended workflow for dev-test-live databases


We are trying to get started with SQL Source control and have some questions.

This is what I am aiming towards. Does this look like it will work?

  1. Modify dev database tables/procs
  2. Commit to dev git branch on dev PC
  3. Push changes to central repo
  4. Repeat steps 1-3 for each change
  5. Merge dev branch into test branch
  6. Use SQL Source ConGtrol "Get Latest" on test branch
  7. Apply changes to test DB
  8. Repeast steps 5 - 8 but from test to live

Note: - Using "Shared database" development model.

Questions:

enter image description here


Solution

  • Great that you're deploying a versioned copy of your database changes from the repository, that's really good continuous delivery practise in my eyes.

    Have a few suggestions about your questions (I have my Red Gate hat on)

    I've drawn a diagram with some tweaks to yours. Not sure if you are using a CI server, but I've added in where that could fit into the process too. This diagram assumes dedicated modes for the two developers, but that could be a shared database instead.

    Red Gate SQL Source Control Continuous Database Delivery