Create migration script for committed changes


last week we updated our SQL Source Control from version 3 to the latest version 6. Unfortunately we're now not able to execute our standard release-process. This process looks as follows:
  • We use the database in "shared mode".
  • Every developer commits his changes during the development process on the "commit-tab".
  • When we're going to release, our release manager opens the "migrations-tab" and selects every needed commit for the release and manualy creates a migration-script.
  • Then he uses this migration script and executes it on every other database (also manually).
Unfortunately since we made the update, we do not find the option to create a migration script for commited changes. It's only possible to create a blank script or to create a script for uncommited changes.

Where is option to manually create a migration script for various commits (without any other add-ons like SQL Compare)?

Thx in advance.
BR, Manuel


  • Hi Manuel,

    Unfortunately we won't be able to change the behaviour back to what it was in version 3.

    Can you explain a bit why your release manager needs to selects every needed commit for the release and manually creates a migration-script so that we can see if there is an alternative way for you?
    Kind regards

    Tianjiao Li | Redgate Software
    Have you visited our Help Center?
  • Hy Tianjiao,

    we have a few developers working on our shared database on different issues for different releases. When they finish their work, they commit the changes with an appropriate comment with Source Control. If they get notified that there are "dependent changes", they do not automatically include them but they go through them afterwards (because most of the time, the dependent changes are not relevante for their work).
    On the day of the release, our release manager goes through all the commits and selects every single commit that is relevant for the release and creates a single migration script.This migration script is exceuted on our internal productive-database for our testing-department.
    If all the tests are OK, the release-manager sends the script to DBA's of our customer to execute the script at our customers database to finish the release.

    It would be great if there is an "alternative way", because this release-process is coordinated with our customer and we are not allowed to change the process.
    And in the meantime it's  very time-consuming and error-prone to create the script for each change manually.

  • Tianjiao_LiTianjiao_Li Posts: 684 Rose Gold 5
    edited September 14, 2018 2:37PM
    Hi @Manuel_Pfaffenlehner

    Thanks for your explanation. Unfortunately the occasional migrations are meant to be used to enable changes that would fail or cause data loss with the default behaviour of the compare engine that SQL Source Control uses behind the scene.

    For your case, you should use SQL Compare or SQL Change Automation for releasing.
    Kind regards

    Tianjiao Li | Redgate Software
    Have you visited our Help Center?
Sign In or Register to comment.