目前我们正在使用TortoiseSVN进行版本控制。我正在寻找的是一种在svn commit上运行构建的方法。因此,每当开发人员尝试在svn上提交时,它应该触发构建(MSBuild脚本?),然后如果可能的话,在完成提交之前运行所有单元测试。很高兴得到一些关于此的提示或建议。
平台信息: VS2010 TortoiseSVN的 NUnit的
答案 0 :(得分:3)
答案 1 :(得分:1)
有很多解决方案。维基百科有list of build automation software可能有用。
我非常喜欢Hudson,但是Hudson有点偏向于Java,所以.NET可能有更好的解决方案。
编辑:在允许用户提交之前,OP似乎想要运行本地构建。我认为这是一个坏主意,因为它基本上使得提交更长的操作。如果开发人员提交破坏的代码存在问题,那就更多的是政策问题。答案 2 :(得分:0)
您可以查看TeamCity。专业版是免费的(但仅支持20种构建配置)。我们为每个存储库构建了单独的构建配置(存储库包含多个应用程序 - 可视工作室解决方案),其中两个解决了您的问题:第一个构建配置称为“持续构建”,每次开发人员提交时都会触发。下一个构建配置是'Nightly builds',计划每晚运行(这可以在Teamcity中配置)。此构建运行NUnit并验证所有单元测试,并将报告发布到Teamcity门户中。希望这些信息有所帮助。