2

私のチームでは、開発者がコード分析からの警告でコードをチェックインできないようにしたいと考えています。

いくつかのブログやstackoverflow-questionsで見つけたように、チェックインポリシーでこれを作成しようとしました:

  1. Visual Studio プロジェクトでコード分析を有効にし、Rulset (Microsoft の最小推奨ルール) を設定します。
  2. チェックイン ポリシー「コード分析」を追加し、同じルールセット (Microsoft の最小推奨ルール) を設定します。

私が今持っている問題は、エラーがある場合にのみポリシーがチェックインを防止し、警告のみがある場合には防止しないことです。もちろん、ルールセットを変更して、すべてのルールをエラーとして設定できます。ただし、ローカル ビルドもできません。

したがって、私が望むのは、ルールはすべて警告であり、プロジェクトのビルドは可能ですが、警告のみが存在する場合でもチェックインは防止されるということです。

私の考えは、チェックインポリシー設定で別のルールセットを設定することでした(同じルールですが、すべてのルールがエラーになります)。しかし、チェックインを試みると、次のエラーが表示されます: Code analysis settings are not compatible with code analysis policy .

だから私の質問は、誰かがこの問題を解決する方法やアイデアを持っているかどうかです.

ご回答ありがとうございます。

4

2 に答える 2

2

V2010 でこれを試しました (つまり、警告をエラーとして扱います) が、コンパイラの警告に対してのみ機能し、CA の警告に対しては機能しませんでした。そのため、CA の警告は警告のままでしたが、コンパイラの警告はエラーになりました。

于 2012-07-10T22:31:59.037 に答える
1

私がそれを正しく理解した場合、その後の動作は次のとおりです。

  • 開発者のワークステーション: 警告があってもコンパイルは成功する
  • TFS ビルド: 警告がある場合にコンパイルが中断する

これを取得するには:

  1. csproj から「ビルド時にコード分析を有効にする」を削除します。
  2. チェックイン ポリシーを削除する
  3. 編集用にビルド定義を開き、[プロセス] > [2.Basic] に移動し、[コード分析の実行] を [常に] に設定します。

ここで、ビルドがすべての DEV ワークステーションで成功し、TFS で失敗する状況で実行する可能性があることに注意してください。それは本当に悪いでしょう。
これを回避する 1 つの方法は、ビルドのトリガーを「Gated Check-in」に変更することです。これにより、警告が表示された場合、ビルドが失敗し、開発者がチェックインできなくなります。
この最後の手順は、何らかの形で代替となります。削除したチェックイン ポリシーの

于 2012-02-29T15:56:51.987 に答える