Gerrit
一个基本的Git服务器已经足以胜任许多用途了。
尽管如此,有些时候你需要精确地控制工作流。
一个实际的例子是把变更合并到关键的基础设施配置代码里。虽然我认为DevOps不应该对基础设施代码有不必要的规程,但是不可否认确实在某些时候它还是有用的。否则,开发者可能会对提交基础设施的变更感到紧张,并希望更有经验的人能一起审查代码。
Gerrit是基于Git的代码审查工具,它可以提供一个这种状况下的解决方案。筒而言之,Gerrit可以让你创建规则来允许开发者审查和批准其他开发者对代码库的变更。由资深的开发者审查经验不足的开发者的变更,通常来说多双眼睛关注代码会带来更好的质量。
Gerrit基于ava并在后台使用了基于Java的Git实现。
Gerrit可以作为Java的WAR文件来下载,并且提供了一个集成创建方法。它需要依赖一个关系型数据库,但是选择一个基于Java的H2嵌入式数据库就足以评估Gerrit了。
更简单的方法是使用Dockei.来尝试Gerrito在Docker hub上有数个Gerrit镜像可供选择。我们为这次评估的练习选择了下面这个: https://hub.docker.com/r/openfrontier/gerrit/