掌握聚合最新动态了解行业最新趋势
API接口,开发服务,免费咨询服务

Go现在接受来自GitHub PR的补丁

为便于开发人员对Go的开发做出贡献,Google开始将Go的GitHub PR(Pull Request)镜像到Go的上游Git服务器Gerrit

Gerrit是Go开发中主要使用的代码管理工具。为便于开发人员获取Go代码,现在所有归并到Gerrit的更改,同时也镜像到GitHub上的GoLang代码仓储中。据Google的Go工程师Andrew Bonventre介绍,Go团队近期也开始对GitHub PR做镜像,目前在于使Go开发贡献工作流更顺畅。

该工作是通过GerritBot实现的。GerritBot是一种机器人,它可以将任一GitHub PR导入到Gerrit,并以评论(comment)形式将Gerrit的审查链接发布到GitHub PR。所有在Gerrit中添加的评论都将同步到PR中,PR原始贡献者可以对这些评论做处理,并在不离开GitHub环境的情况下将更多的提交推送到同一PR分支。

Gerrit是一种基于Web的代码审查工具,构建在Git之上。Gerrit通过提供一种轻量级框架,简化了代码的审查。在框架中可并排展示所有的更改,并支持内联评论。这在某种程度上类似于GitHub PR所提供的功能,虽然两者在哲学上存在着根本差异。事实上,Gerrit在每次提交时都执行审查,而GitHub PR则是基于两个分支间的差异执行审查。这对于在GitHub或Gerrit中哪种工作流更自然具有重大影响。具体来说,Gerrit注重于单次提交审查,应该将更改分解为一组较小的自包含提交,而通常GitHub PR包含多次提交。

此外,Gerrit实际上提供了一种提交模型。在模型中,提交在实际归并到上游前,会做连续的修订。该模型的目标是通过修改先前的提交,仔细修订变更的历史记录,或将多次提交置于一次提交中。GitHub PR一般不会这样使用,尤其是在使用GitHub Web UI时。在使用命令行处理PR时,我们可以手动获得类似的结果。

原文来自:infoQ

声明:所有来源为“聚合数据”的内容信息,未经本网许可,不得转载!如对内容有异议或投诉,请与我们联系。邮箱:marketing@think-land.com

0512-88869195
数 据 驱 动 未 来
Data Drives The Future