我们已经在Azure DevOps中配置了构建管道(CI)。以下是定义(yml),如果有帮助的话:
{{1}}
我们想利用Visual Studio(https://blogs.msdn.microsoft.com/zainnab/2012/06/28/visual-studio-2012-new-features-code-clone-analysis/)的克隆代码检测功能在代码库中找到重复的代码,以便团队可以进行修复。
要在构建定义中使用此功能,我需要做哪些更改?
答案 0 :(得分:1)
无法从命令行执行Visual Studio代码克隆检测。但是,要实现所需的功能,可以使用JetBrains Resharper CLI的命令行代码克隆检测工具。
请参阅:https://blog.jetbrains.com/dotnet/2013/09/03/duplicate-finder-part-of-resharper-command-line-tools/
在CI管道中运行此类工具的问题是,没有一种好方法可以在Azure DevOps UI中报告克隆或使构建完全在您希望的时候失败。有些克隆就是。其中一些是故意的。因此,理想情况下,这些工具可以在IDE中运行,并且开发人员可以在那里解决问题。
使用Jetbrains Duplicate Finder,您可以至少将代码段标记为“已排除”,以防故意复制。使用代码克隆分析,您可以添加解决方案特定的配置文件来实现此目的。