我最近遇到了 Gerrit 代码审查工具,它有助于使用 Git 版本控制系统对项目进行在线代码审查。我只是想知道其他存储库是否存在类似的东西,例如 Clearcase/subversion。
好的,对于那些不了解 Gerrit 的人来说。
格里特门代码签入。当开发人员推送更改时,他们会进入 Gerrit 的代码审查队列。在经过审查和测试之前,这些更改不能合并到主分支。
人类负责代码审查。Jenkins 负责构建和单元测试。
所以它是这样的:
- 开发人员将更改推送到 Gerrit。它进入审查队列。
- 审阅者会收到有更改等待审阅的通知。
詹金斯也会收到通知。Jenkins 检索更改并为所有 11 个平台运行构建测试。它还可以运行静态分析检查、样式检查等。
一个。如果任何构建或测试失败,Jenkins 在 Gerrit 审查中将更改标记为“测试失败”。
湾。如果所有构建和测试都通过,Jenkins 会将更改标记为“测试通过”。- 如果代码审查通过并且测试通过,则可以将更改合并到主分支中。
- 如果审查或测试失败,则无法合并提交。开发人员必须修复它以满足 Jenkins。
Jenksins CI 服务器是一个积极的审查参与者。作为奖励,审查者通常可以在他们审查代码之前看到 Jenkins 的结果。如果更改未通过测试,那么审阅者无需在此更改上浪费时间。
所以主分支总是成功构建。是不是很优秀!
我正在为 Clearcase 寻找类似的东西,我已经为 Clearcase 提供了一个连续的集成构建环境,但我想将 Gerrit 的功能插入它。另一种可能性可能是将 Gerrit 与 Clearcase 一起使用,但无法获得任何指示。