0

私のチームは、ASP.NETを使用してWebアプリケーションを開発しています。アプリケーションは非常にデータベースに基づいています(SQL Serverを使用しています)。ほとんどの機能には、サーバー側とクライアント側のコードに加えて、データベースの開発が必要です。ソースコード管理システムとしてGITを使用しています。

データベースの変更をチェックイン(および後でデプロイ)するために、SQLスクリプトを作成してチェックインします。インストーラーはそれらを実行することを認識しており、これがこれらの変更をデプロイする方法です。スクリプトを使用して変更をマージするのは非常に不快です(たとえば、2人の開発者が同じテーブルに列を追加した場合)。

だから私の質問は、他にどのような方法やツールを提案できるかということです。Visual Studioに役立つデータベースプロジェクトがあることは知っていますが、まだ学習していません。学習を開始する前に、他のオプションがあるのではないかと思います。

ありがとう!

4

2 に答える 2

1

worlflowを追加して、データベース開発の最初のステップからLiquibaseを使用する必要があると思います(変更ログが初期構造の作成から開始されたLiquibaseクイックスタートを確認しください)

開発者からのPOVLiquibaseの追加は、一部のチェンジセットでデータベーススキーマを変更する必要がある場合に、ソースツリーに追加のXMLファイルが表示されることを意味します

于 2013-01-04T15:37:43.550 に答える
0

私がこの製品を作っているRedGateのために働いているという最初の完全な開示...

SQLソース管理を見てみたいと思うかもしれません。これは、開発データベースを既存のバージョン管理システム(この場合はgit)に接続するSSMSのプラグインです。

開発者が開発データベースに変更を加えると(専用のローカルコピーまたは共有開発データベースのいずれかで)、この変更が検出され、リポジトリにコミットできます。他の開発者はこの変更を拾い上げることができ、あなたはそれを他の環境に伝播することができます。

デプロイメントに関しては、SQL Compareツールを使用して、チェックアウトしたリポジトリ内の特定のリビジョンからデプロイできます。

2人の開発者が同じテーブルに変更を加える例のように、これは非常に便利です。2人目の開発者は、変更をコミットする前に、バージョン管理システムから変更を取得できます。または、gitの分岐/マージ機能を使用して、これらを別々のブランチで追跡し、別々の変更としてデプロイすることができます。これをCIシステムに結合する余地もあります。

gitを使用したSQLソース管理の実行に関する詳細:

そして、より一般的なセットアップガイドへのリンク

于 2013-10-15T14:03:13.250 に答える