1

オープンソースの臨床データ収集システムである Caisis (Caisis.org) を開発しています。Caisis は、ASP.NET (4.0) (C# コード ビハインド) フロント エンドおよび SQL Server 2008 バック エンドです。

Caisis のバージョンは定期的にアップグレードされます。たとえば、私たちは Caisis バージョン 5.0 の開発に忙しくしており、現在 Caisis バージョン 6.0 がリリースされています。フロントエンドとバックエンドのすべての変更を Caisis バージョン 6.0 に転送する必要があります。

2 つの SQL Server データベース間の同期の違いは、Red Gate SQL/Data Compare または Open DBDiff などのオープン ソース DB ツールを使用して対処できます。

ただし、私が知る限り、2 つの ASP.NET/C# アプリケーションを同期する同等のツール (独自またはオープン ソース) はありません。現在、robocopy を使用して 2 つのファイル システムの違いを検出し、これらの変更を手動で適用する半自動化されたアプローチに縮小されています。これを行うより効率的な方法はありますか?

4

2 に答える 2

1

私も似たような状況にあったことがあります。答えは簡単です。簡単な作業ではありません。Beyond Compare や Araxis Merge などのツールを使用できます (私の意見では、Merge はよりユーザーフレンドリーで、BC はより強力です)。ディレクトリ比較を行うため。少し構成するだけで、これらのツールで、相違のないすべてのディレクトリ ブランチとファイルを非表示にして、相違点のサブセットだけを残すことができます。次に、これらのツールのファイル比較機能を使用して、ファイルで何が変更されたかを正確に確認し、何をプルして何を残すかを選択できます。

(意見) このマージはクリーンなチェックアウトで行う必要があります。つまり、チェックインする未処理のファイルがありません。次に、マージが完了した後、アップグレード マージの変更だけで大きなチェックインを 1 回行います。次に、取りすぎた場合、または何かを逃した場合にロールバックする方法があります。変更をロールバックして修正し、再試行できます。

于 2013-06-01T13:31:33.520 に答える