我正在使用SVN作为我项目的版本管理工具,并计划使用声纳进行项目分析。
每次将代码检入SVN时,如何进行声纳项目分析?
答案 0 :(得分:13)
不要做复杂的事情作为预先提交钩子!当用户执行提交时,控件不会在预提交挂钩完成之后返回给用户。由于Sonar必须编译您的代码,因此您的用户必须等待以下每次提交:
所有这一切需要多长时间? 10分钟? 20分钟? 5分钟?假设您的代码很小或编译器速度非常快,因此只需4分钟。您的用户是否希望每次执行提交时等待4分钟才能重新开始工作?
相反,请获取像Jenkins这样的连续构建服务器。 Jenkins设置快速简单。这是一个简单的* .war文件。你只需运行:
$ java -jar jenkins.war
而且,你已经开始运转了。一旦Hudson启动,您就可以定义一个“工作”。只需输入所需信息,然后保存即可。每次有人在Subversion中提交时,Hudson都会在后台构建。
所有乐趣都来自于可以扩展Jenkins的数十个(也可能是数百个)第三方插件。例如,有一个Sonar插件可以运行你的Sonar任务,更新你的数据库,并生成一些漂亮的报告。
如果有问题,Jenkins将通过电子邮件向负责人和整个开发团队发送电子邮件。 (插件允许Jenkins进行IM,推特,甚至将红绿灯从绿色变为红色)。这些即时反馈和公共知识将使您的开发人员在进行提交之前进行自己的测试。
答案 1 :(得分:0)
你可以调查哈德森。它有一个Sonar插件。