Batch file 使用TF命令行get latest,如何仅在签入新代码时运行SonarQube分析?

Batch file 使用TF命令行get latest,如何仅在签入新代码时运行SonarQube分析?,batch-file,command-line,tfs,sonarqube,Batch File,Command Line,Tfs,Sonarqube,我使用一个BAT文件来运行TF命令行get latest,然后调用Sonar runner BAT文件对最新代码进行分析。 我使用任务调度器每小时自动完成一次。 我只想在TF获得新代码时运行声纳分析,否则它应该跳过 我如何做到这一点?我尝试搜索退出代码,但没有任何消息告诉我是否提取了任何新代码。Visual Studio Team Services或TFS 2015+ 您可以将生成配置为在持续集成(CI)时触发,即每当进行更改时,都会触发生成。构建可以是您想要的任何内容,从调用适当的msbuil

我使用一个BAT文件来运行TF命令行get latest,然后调用Sonar runner BAT文件对最新代码进行分析。 我使用任务调度器每小时自动完成一次。 我只想在TF获得新代码时运行声纳分析,否则它应该跳过


我如何做到这一点?我尝试搜索退出代码,但没有任何消息告诉我是否提取了任何新代码。

Visual Studio Team Services或TFS 2015+

您可以将生成配置为在持续集成(CI)时触发,即每当进行更改时,都会触发生成。构建可以是您想要的任何内容,从调用适当的msbuild/mstest和SonarQube任务,到使用cmd/powershell/bash完成您自己的工作

要了解有关将SonarQube分析与TFS构建集成的更多信息,请参阅:

TFS 2013

您可以将XAML构建配置为在持续集成上运行

通过脚本


当代码发生更改时,建议使用连续集成构建来运行逻辑。但是,如果您想使用“tf get”-您可以捕获“tf get”的输出,如果它与“所有文件都是最新的”,则不执行任何操作,否则将触发SonarQube执行。

Visual Studio Team Services或TFS 2015+

您可以将生成配置为在持续集成(CI)时触发,即每当进行更改时,都会触发生成。构建可以是您想要的任何内容,从调用适当的msbuild/mstest和SonarQube任务,到使用cmd/powershell/bash完成您自己的工作

要了解有关将SonarQube分析与TFS构建集成的更多信息,请参阅:

TFS 2013

您可以将XAML构建配置为在持续集成上运行

通过脚本


当代码发生更改时,建议使用连续集成构建来运行逻辑。但是,如果您想使用“tf get”-您可以捕获“tf get”的输出,如果它与“所有文件都是最新的”,则不执行任何操作,否则将触发SonarQube执行。

非常感谢@bogdan gavril msft。将首先尝试通过脚本。最终的计划仍然是将其集成到CI中,这将在成功后进行。另外,@bogdan您能给我指出一篇描述SonarQube的CI集成的好文章吗?嗨@AhmadZaib-您使用的是什么构建系统?团队构建(又称XAML构建|)或新的TFS构建(可与TFS 2015+或服务产品一起提供),或其他非Microsoft产品?您好,Bogdan,我们最近已迁移到TFS 2015。因此,我们期待着将声纳集成到同一个系统中。谢谢你花时间来帮助我们:)嗨@Bogdan,以上有什么线索吗?我们现在正在使用TFS 2015。非常感谢@bogdan gavril msft。将首先尝试通过脚本。最终的计划仍然是将其集成到CI中,这将在成功后进行。另外,@bogdan您能给我指出一篇描述SonarQube的CI集成的好文章吗?嗨@AhmadZaib-您使用的是什么构建系统?团队构建(又称XAML构建|)或新的TFS构建(可与TFS 2015+或服务产品一起提供),或其他非Microsoft产品?您好,Bogdan,我们最近已迁移到TFS 2015。因此,我们期待着将声纳集成到同一个系统中。谢谢你花时间来帮助我们:)嗨@Bogdan,以上有什么线索吗?我们现在正在使用TFS 2015。