0

当社の svn には多くのビジュアル スタジオ ソリューションがあり、さまざまなチームがさまざまな領域に取り組んでいます。私たちのプロジェクトのいくつかは、再利用可能なライブラリ プロジェクトです。

問題は、誰かが特定のソリューションの一部であるライブラリ プロジェクトに重大な変更を加えたときに発生します。その人は、他のソリューションが影響を受ける可能性があることをどのように知ることができますか?

ファイル システムを再帰的に通過し、VS プロジェクトを開き、依存関係グラフを作成して、影響を受けるソリューションを一目で確認できるツールはありますか?

4

3 に答える 3

1

<brainstorm>
    または、svn の precommit フックを使用
    して、コミットされた項目の単体テストを実行し、テストが失敗したときにコミットを拒否することもできます
</brainstorm>

于 2010-08-05T23:42:26.463 に答える
0

継続的インテグレーションを使用して、誰かが重大な変更を加えたかどうかを検出するため、依存関係グラフを見つける必要はありません(まあまあ、以下を参照)。

これは、SVNへのコミットが行われるたびに、すべてのプロジェクトを内部に含むすべてのソリューションを構築することです。もちろん、ソリューションの順序を知る必要があります(6つのソリューションなので、耐えられます)。各ソリューション内で、プロジェクト(最大65)は依存関係が設定されているため、正しい順序でビルドされます。3つのエージェントのビルドグリッドを使用して、応答時間を短くします。

結果として、変更によってビルドが壊れたかどうかが1時間以内にわかります。

あなたの状況では、他の要因が働いている可能性があるため、私たちにとってうまく機能するソリューションはあなたにとって不適切かもしれません。

于 2010-08-06T00:40:22.570 に答える
0

cygwin をインストールして実行

find . -name "*.sln" -exec grep -q "*ProjectName.csproj*" '{}' \; -print

リポジトリのルート フォルダーから。

プロジェクトを含むすべての sln ファイルが出力されます。Windows Vista からこれを実行できると思っていましたが、Windows エクスプローラーの「高度な検索」機能は大きな問題です。ファイル パターンとコンテンツ パターンの両方を指定することはできません。

于 2010-08-06T03:28:15.747 に答える