写点什么

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

  • 2018-02-27
  • 本文字数:794 字

    阅读完需:约 3 分钟

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

为便于开发人员对 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 时,我们可以手动获得类似的结果。

查看英文原文: Go Accepts Patches from GitHub Pull Requests Now

2018-02-27 18:001953
用户头像

发布了 391 篇内容, 共 138.9 次阅读, 收获喜欢 256 次。

关注

评论

发布
暂无评论
发现更多内容

实用机器学习笔记十四:多层感知机

打工人!

人工智能 机器学习 算法 学习笔记 12月日更

给弟弟的信第13封|一个北京姑娘的艰辛生活

大菠萝

28天写作

Flyway让数据库版本管理更简单

恒生LIGHT云社区

数据库 sql SqlServer

欢迎举报Perforce Helix Core盗版行为

龙智—DevSecOps解决方案

盗版软件 perforce盗版 打击盗版

面试官:如何实现 List 集合去重?

王磊

java面试

C++ 开发笔记

行者孙

内容合集 签约计划第二季

Elasticsearch 查询最大时间(qbit)

qbit

sql UTC TimeZone 时区

JerryScript:物联网开发者的得力工具

华为云开发者联盟

物联网 LiteOS JerryScript 引擎 物联网应用

一文带你熟知ForkJoin

华为云开发者联盟

jdk 并发编程 并发 forkjoin 多线程并发

用户文章转载:一图看懂 | 我用这张图,看懂了 P4 Reconcile

龙智—DevSecOps解决方案

perforce 一图看懂 P4 Reconcile

React进阶(五):导航守卫

No Silver Bullet

React 路由 12月日更

lock-free在召回引擎中的实现

高性能架构探索

架构 分布式 微服务 签约计划第二季

react源码解析11.生命周期调用顺序

buchila11

React

带波浪效果的CollapsingToolbarLayout + RecycleView

阿策小和尚

28天写作 Android 小菜鸟 12月日更

前端架构师修炼指南精选

杨成功

前端 架构师 内容合集 签约计划第二季

阿里云田涛涛解读未来自动化运维新思路:CloudOps

阿里云弹性计算

CloudOps 云上运维

流量控制-从原理到实现

高性能架构探索

架构 分布式 微服务 签约计划第二季

亿级流量实验平台设计与实现

高性能架构探索

架构 分布式 微服务 签约计划第二季 实验平台

面试官:useLayoutEffect和useEffect的区别

全栈潇晨

React

深入理解Flutter相机插件【Flutter专题22】

坚果

flutter 28天写作 签约计划第二季 12月日更

技术实力过硬,旺链科技斩获“年度区块链技术突破奖”!

旺链科技

区块链 区块链技术 产业区块链

react源码解析12.状态更新流程

buchila11

React

有了代码变更分解提交工具SmartCommit,再也不担心复合提交了

华为云开发者联盟

代码 复合提交 SmartCommit 代码提交 代码提交原子性

吃透负载均衡

高性能架构探索

负载均衡 架构 分布式 微服务 签约计划第二季

Linux中国对话龙蜥社区4位理事:龙蜥操作系统捐赠的背后,是谁在推动?

OpenAnolis小助手

Linux 国产操作系统 龙蜥社区

面试官:react中的setState是同步的还是异步的

全栈潇晨

React

Scrapy Spider中间件,你学会了吗?本篇博客有一案例

梦想橡皮擦

12月日更

彻底搞通服务发现的原理和实现

高性能架构探索

架构 分布式 微服务 服务发现 签约计划第二季

智能运维之时间序列预测中的经典时序模型

云智慧AIOps社区

机器学习 算法 智能运维 云智慧 指标预测

netty系列之:小白福利!手把手教你做一个简单的代理服务器

程序那些事

Java Netty 代理 程序那些事 12月日更

【LeetCode】寻找旋转排序数组中的最小值Java题解

Albert

算法 LeetCode 12月日更

Go现在接受来自GitHub PR的补丁_开源_Sergio De Simone_InfoQ精选文章