近日,Eclipse 基金会发布了万众期待的 Gerrit ,用于基于 Git 的代码审查与补丁提交。Gerrit 是个基于 Web 的工具,用于接收 Git 提交,InfoQ 此前曾对其做过报道。该审查工具位于 https://git.eclipse.org/r/ 。
Gerrit 已经为很多开源项目所广泛使用,如 https://android-review.googlesource.com/ ,由于 EGit 已经成为标准 Eclipse 的一部分,同时已经有近一半的Eclipse 项目开始使用Git ,因此集成Gerrit 是个合情合理的结果。
Chris Aniszcsyk 一直以来就在支持着 Git 与 Gerrit,他说到:
我们几个提交者在过去几年中一直都在推动着 Gerrit 的发展以完善 Eclipse 的基础设施,现在很高兴看到这一切都梦想成真。我们在很长一段时间内都在 EGit 与 JGit 项目中使用 Gerrit,对其感到非常满意。现在 Eclipse 提交者有一种很便捷的方式来使用 Git 进行代码审查(如果他们想要将这个流程添加到项目中)。
然而,Eclipse 的进程还需要追赶上技术上的改进。作为一种 DVCS 而广泛使用的 Git 对于那些在 GitHub 上来对 Eclipse 进行分支的人来说是不太重要的,它对这个功能提供了改进,可以直接提交到仓库中。然而,这个进程主要是向 bugzilla 添加“补丁”,通常这在 DVCS 世界中是不太常见的事情(但不是不可能)。
但 Gerrit 向用户提供了一个协议,用户在首次登陆前需要同意该协议,这通常用于接受许可协议,Eclipse 进程对此说到:
贡献者会维护相应的 Bug 或是 Gerrit 中的注释表明他们会: 1. 对其贡献的内容进行 100% 的授权
2. 有权利将内容贡献给 EPL
3. 在 EPL 下贡献内容目前,我们要求贡献者在创建账户时能够明确遵守使用条款;我们还进一步要求贡献者对每次贡献都能坚持上述三个问题。同意意见可以在 Bugzilla 记录中给出(如果有的话)或是在连接到 Gerrit push 的注释中。
目前正在进行的一场讨论表明这个规则在过去的其他版本控制系统中常常被忽视掉。
随着Eclipse 3.7.2 的发布,同时很多项目依然在使用CVS 或SVN 仓库的原因是“防止”3.7 的流式构建,看起来Git 的使用到 EclipseCon 2012 之前会有一个大的跨越。在关闭CVS 之前还有310 天,之后很多项目都会甩开CVS 甚至是SVN。如果Eclipse 贡献协议的问题能够得以解决,Gerrit 的补丁能够集成到IP 工作流中,那么我们将会看到有更多的贡献会涌入到核心的平台库中。
查看英文原文: Gerrit at the Eclipse Foundation
评论