Я являюсь частью небольшой команды, которая хочет перейти на использование TFS для контроля исходного кода и управления сборкой для базы данных SQL Server 2008.Для нашего продукта могут быть клиенты, использующие разные версии продукта / базы данных.Одна проблема, которую мне нужно решить, - это как управлять сложными сценариями обновления в ситуациях, выходящих за рамки обычных возможностей развертывания.
Простой пример этого:
Версия 1.0 имеет отдельные таблицы для администраторов и клиентов.,
Версия 2.0 заменяет эти таблицы одной таблицей Users.Для этого необходим специальный сценарий для переноса информации от администраторов и клиентов к пользователям.Согласно руководству по Visual Studio ALM Rangers (http://vsdatabaseguide.codeplex.com),, лучший способ сделать это - скопировать данные во временную базу данных перед развертыванием, а затем скопировать из временной базы данных после развертывания.
Этот метод будет хорошо работать для развертывания Версии 2.0 в существующей базе данных Версии 1.0, но как вы управляете этим сценарием обновления для будущих версий? Одна из целей использования TFS здесь - иметь возможность развернуть Версию 3.0 в базах данных, которыес версией 1.0 или версией 2.0; сценарий обновления должен оставаться частью процесса развертывания, чтобы переходить с 1.0 на 3.0, но сценарий не должен включаться при переходе с 2.0 на 3.0.
Можно ли управлять такими сценариями обновления через TFS? Имеет ли TFS возможность выполнять только определенные сценарии на основе любого типа управления версиями?