我们团队中的某个人安装了StyleCop,自那时起,他加载并提交到源代码控制的所有项目都拒绝加载,除非安装StyleCop。
我知道我可以手动编辑.csproj文件来摆脱它,但是否有一种简单的方法自动从项目文件中删除这些StyleCop部分,以便在未受StyleCop感染的Visual Studio机器上加载和构建?
为什么要移除它?
在我看来,使用StyleCop是一件好事。
您唯一的问题似乎是您的团队成员没有正确设置StyleCop。
根据您的描述,我猜他想要使用MSBuild集成设置StyleCop: http://blogs.msdn.com/b/sourceanalysis/archive/2008/05/24/source-analysis-msbuild-integration.aspx
显然,他只是漏掉了最后一段“团队开发”:将StyleCop文件复制到您的项目中并将其检入源代码控制,这样您就不需要在每个开发人员的计算机上安装StyleCop。 (请参阅我的链接以获取更详细的说明)
如果这样做,StyleCop应该在每台机器上都可以工作,无论是否安装它。
我们也是以这种方式使用StyleCop,我认为这是最简单的方法。
我只需在每个 .csproj 文件中插入两行代码并将几个文件检入源代码控制一次......StyleCop 就会在每次编译、每台机器上(无论是在开发人员机器上还是构建服务器上)自动工作。
Stylecop隐藏了真正的警告。这是一种虚荣的行为,是邪恶的。
不要使用它。
我发现Stylecop会生成许多琐碎的警告,淹没了真正的警告。尽管可以使用这些工具,但不要强制使用它们。没有stylecop警告是一个毫无意义的指标。
我通过在解决方案根目录下的settings.stylecop
文件中添加以下GlobalSettings
配置来禁用StyleCop。
<StyleCopSettings Version="4.3">
<GlobalSettings>
<BooleanProperty Name="RulesEnabledByDefault">False</BooleanProperty>
</GlobalSettings>
...
</StyleCopSettings>
测试驱动开发
Red -> Green -> Refactor
测试驱动开发(与StyleCop一起)
Red -> Red -> WTF? -> Red -> Red -> ...
同时,来自这里:
Bob:使用模式匹配,软件会识别出丑陋的代码
Charlie: ——并修复它!
Bob:不,它会打印关于每个违规行为的信息。
Charlie: 然后用户右键点击修复所有问题?
Bob:不,该消息指责他们“逗号周围的无效空格”。
Charlie: 然后解释用户如何修复它?
Bob:没有,这些信息在另一篇文档中。
Charlie: 在Google上?
Bob:不是。
这就是为什么不要使用Stylecop。
devenv /Setup
和devenv /ResetSettings
解决了它。希望能帮助到某些人。 - MasterMastic