2012-02-29 70 views
2

在我的團隊中,我想阻止開發人員使用代碼分析中的警告簽入代碼。TFS2010:如果存在代碼分析警告,則防止簽入

就像我在一些博客和計算器,問題發現我試圖簽入的政策,使這個:

  1. 在Visual Studio項目啓用代碼分析和設置Rulset(微軟最小的推薦規則)
  2. 添加簽入策略「代碼分析」並設置相同的規則集(Microsoft最小推薦規則)。

現在的問題是,該政策只防止檢查,如果有錯誤,但不是如果只有警告。當然,我可以更改規則集並將所有規則設置爲錯誤。但是,當地的建造也是不可能的。

所以,我想要的是,規則都是警告和建設項目是可能的,但如果只有警告存在,也可以防止簽入。

我的想法是,在簽入策略設置中設置不同的規則集(相同的規則,但所有的規則都是錯誤)。但通過嘗試簽入Ÿ得到錯誤:代碼分析設置與代碼分析策略不兼容。

所以我的問題是,如果有人有解決方案或想法如何我可以解決這個問題。

在此先感謝您的答案!

回答

1

如果我得到它的權利後,之後的行爲你:

  • 在開發者的工作站:編譯成功,即使有警告
  • 在TFS-體形:編譯休息,如果有警告

爲了得到這樣的:

  1. 刪除從您的csproj
  2. 「關於構建啓用代碼分析」刪除了入住政策
  3. 打開構建定義編輯&導航到「進程」>「2.基本」,並設置「執行代碼分析」爲「Always」

現在,要小心,你可能在一個情況,即建立在每一個DEV-工作站&在TFS無法成功運行。那真的很糟糕。
避免這種情況的一種方法是將構建的觸發器更改爲「門控簽入」,以便如果出現警告 - 構建將失敗&開發人員無法簽入。
這最後一步是 - 以某種方式 - 替代您刪除的簽入策略。

+0

感謝您的回答。正如你所說我認爲用你的解決方案,我得到的問題是我無法直接在視覺工作室看到警告。我在一些文章中看到,在tfs2008中,可以將「將警告視爲錯誤」,這些錯誤涵蓋了我的問題。但它似乎在tfs2010這個選項不可用..現在我想在做一個自定義的檢查政策,但我不太喜歡這個想法;-) – rhe1980 2012-02-29 19:09:49

2

我在V2010中試過這個(也就是將警告視爲錯誤),但它只適用於編譯器警告,而不是CA警告。所以我的CA警告仍然是警告,而我的編譯器警告現在變成了錯誤。

相關問題