4

简单的问题。我使用 Visual Studio 并且我刚刚安装了颠覆,我如何强制使用 msbuild 构建项目,如果成功构建提交它会警告用户。我会使用 TortoiseSVN 或 VisualSVN 或 AnkhSVN(不管它叫什么),如果他们有能力强制构建提交内置(我知道这不是他们的用法,我知道它们只是用作提交 SVN 的 GUI)我想知道是否可以使用这些工具中的任何一个来做这些额外的事情。

总结一下,我只是在寻找一种在提交颠覆之前构建的无痛方式。

4

6 回答 6

6

看看 TeamCity 的“预测试提交”又名“延迟提交”又名“私有构建”功能

简而言之,您“提交”到 TeamCity,TeamCity 验证您的构建并仅在构建通过时提交到真实存储库。如果没有,你会被告知。这里的好处是你的后备箱永远不会被打破。你可以去这里阅读更多关于它的信息https://confluence.jetbrains.com/display/TCDL/Pre-Tested+(Delayed)+Commit

于 2009-02-01T16:08:30.000 回答
4

TortoiseSVN 有你可以使用的客户端钩子脚本。例如,您可以编写一个执行构建的脚本,并且仅在构建成功时才返回 true。然后将该脚本添加为预提交挂钩。

于 2009-02-01T14:58:40.593 回答
4

您还可以使用 CruiseControl、Hudson 或其他持续集成工具。

这些可以在后台运行,观察变化然后构建。

于 2009-02-01T15:06:18.613 回答
2

Stefan 建议的方法似乎最适合您。

但是,根据您尝试获得的结果,另一种选择可能是使用某种自动持续集成运行,因此每次提交时都会运行构建/测试,然后如果出现问题,它可能会引发警报或其他什么。由于您使用 Visual Studio 猜测您使用 .NET,因此CruiseControl可能值得一看。

于 2009-02-01T15:07:04.727 回答
2

好吧,如果您不愿意为特殊工具付费,您也可以教育您的同事......

于 2009-04-15T19:18:35.297 回答
1

我认为可能对您有用,因为您使用的是 SVN。

总而言之,您所要求的就像 mausch 建议的那样,一个 CI 服务器。在这种情况下,TeamCity 符合要求。

但也许您不需要 CI 服务器附带的所有花里胡哨。那么 SIN 可能对你有用。有时间就去看看吧!

于 2009-04-15T17:18:13.603 回答