我一直在研究 TFS、TeamCity、Jenkins 和 Bamboo,说实话,它们都没有令人信服的。我想要
- 良好的报告
- 良好的 Git 支持
- 门控/延迟 checkin /提交
- 与 Visual Studio 和/或 Atlassian 产品集成
- 该解决方案不应要求普通开发人员使用命令行或终端(Git Extensions FTW)
TFS 的配置和使用总体来说是一团糟,它显然不支持 Git,但它有门控 checkin (尽管它似乎没有必要每次都 checkout 整个项目,所以速度很慢?) 。报告部门也确实缺乏。
TeamCity 在 Git 方面的门控 checkin 支持非常糟糕,否则它是我最喜欢的。支持很多开箱即用的东西。
Jenkins 中的报告很糟糕(历史趋势等),它似乎比其他报告有更多的错误,而且插件质量可能很可怕。另一方面,它是免费且用途广泛的。对 Git 和门控 checkin 的支持如何?
Bamboo 显然具有出色的 Atlassian 集成,但不支持门控 checkin 。 :(
有什么建议吗?
最佳答案
@arex1337 这里提供的所有答案都有其优点。经验告诉我们,没有一个项目/组织会对单一供应商满足其所有需求感到满意。您最终可能会得到一个基本的 CI 工具,其中包含来自拥有 USP 的其他供应商的插件/附加组件。
<小时/>举个例子:
Jenkins 作为基本工具。 @Aura 和 @sti 已经提到了所有好的事情;虽然我们同意插件开发有点不受控制,但仍然有很多插件提供了出色的质量。最重要的是社区很活跃,非常敏捷(他们通常每周发布 1 个版本),您可能遇到的任何问题都很容易解决。额外的好处是插件开发很容易,所以如果到了紧要关头,您可以编写自己的插件。
@Mark O'Connor 非常赞同 SONAR 建议。您可以在报告方面获得最好的报告之一并获得很酷的报告。 @Thomas 已经澄清了有关门控提交的误区
<小时/>支持 Jenkins :
良好的报告 - 您通过 SONAR+Jenkins 获得了它
良好的 Git 支持 - Jenkins 提供了
门控/延迟 checkin /提交 - Jenkins Gerrit plugin
与 Visual Studio 和/或 Atlassian 产品集成 - Jenkins wiki 本身在 Atlassian 上运行。这是已有的一些集成的列表
Clover , Crowd , Confluence ,吉拉:Plugin1 Plugin2 Plugin3
不应要求常规开发人员使用 CLI - Jenkins 不会
<小时/>现在您可以将上面示例中的 Jenkins 替换为 Bamboo,并且可能会接近您想要的。但到目前为止,你最好的选择似乎是 Jenkins 。
TFS 和 TeamCity:目前还没有 Jenkins 和 Bamboo 的联盟。
关于tfs - 支持 Git 和门控 checkin 的持续集成软件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12155401/