4月10-12日 QCon 北京,与全球 140+ 顶尖工程师共同解构 AI 时代的技术浪潮! 了解详情
写点什么

Go 语言正在向 Git 和 GitHub 迁移

  • 2014-11-18
  • 本文字数:989 字

    阅读完需:约 3 分钟

Rob Pike 是 Google 的 Go 语言的主要设计者,他在该语言的 Google Group 上宣布,Go 正在向Git 和GitHub 迁移。Rob 提到,“所有的数据都会保存下来”,但是GitHub 不会用于处理pull 请求和代码复审。Google 的工程师解释说,这方面将使用Google 自有的 Gerrit ,因为它更适合像 Go 这样的大型项目。

Go 语言于 2009 年年底开源。Rob 提到,其开发最初是在 Subversion 上开始的,后来迁移到 Perforce,之后又迁移到 Mercurial。未来几个月,该项目将迁移到 Git 和 GitHub,其中包括所有的子库、问题跟踪系统和 wiki。

Mercurial 给我们提供了不错的服务,但现在是时候继续往前走了。今天的世界和那时已经有很大的不同。

Rob 指出,之所以要采用 Git 和 GitHub,决策背后的主要原因是,基于 Git 的代码复审系统比较适合 Go 团队的工作流程,而且 Go 社区中有很大一部分目前在使用 Git 和 GitHub。如前所述,代码复审将使用 Google 托管的 Gerrit 。Google 的 Go 工程师 Andrew Gerrand 另一个讨论中谈到过 Gerrit 的使用。据他解释,与 GitHub 的代码复审工具相比,Gerrit 有以下几个优势:

  • 在 GitHub 中,合并 pull 请求会污染修改历史。Gerrit 会自动为主分支上的修改变基(rebase),这样会得到一个比较好看的线性的历史关系。
  • GitHub 会强制贡献者创建仓库的一个公开分支,即便他们没有写访问权限。
  • pull 请求中的评论一创建就会发送。Gerrit 也支持在一 pull 请求中提供多条评论,然后只发送一封邮件。
  • 对于某个特定的变化,Gerrit 支持多个“补丁集”,当复审较大的项目时,这点特别有用。

这则消息宣布时也理清了迁移的时间帧:

在 12 月初 Go 1.4 发布之后,迁移会马上完成。1.5 的所有开发都会在 GitHub 上进行;在 1.4 发布之后,Mercurial 树将关闭,不再接受修改。

为将所有数据都转移到 GitHub 上,在问题提交系统中提交过问题或评论的开发者都应该为迁移其问题提供权限,尽管这并不是强制的。如果没有提供,问题将放在“gopherbot”账户的名下。

这让我们可以访问您的 GitHub 账户,以便重新创建您的问题和评论,这样当有针对您的问题的修改时,您会得到通知。

在由该消息引发的评论中,有些开发者对给 Google 权限看他们的私有库和公共库表示担忧。Google 的 Go 语言工程师 Brad Fitzpatrick 解释说,“GitHub 的认证系统只支持这么一个粒度,所以要么放开,要么不放”。

查看英文原文: Go Language Moves to Git and GitHub

2014-11-18 20:303055
用户头像
臧秀涛 略懂技术的运营同学。

发布了 300 篇内容, 共 139.1 次阅读, 收获喜欢 35 次。

关注

评论

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

DDD是软件设计思维方式的转变

Bruce Talk

领域驱动设计 DDD

财经大课:通货膨胀的逻辑

石云升

学习笔记 财经思维 11月日更

区块链新闻编辑部成立,看区块链如何助力新闻传播?

CECBC

Vue进阶(贰零壹):JS合并两个数组方法详解

No Silver Bullet

Vue 数组 11月日更

数据库版本控制中间件flyway企业落地

小鲍侃java

11月日更

搞定大厂算法面试之leetcode精讲1.开篇介绍

全栈潇晨

算法面经

基于海思Hi3559A或者Atlas_200模块,Hi3559A(主)+Atlas_200(从)开发AI加速边缘计算主板的三种模式

Todd Wong

人工智能 深度学习

十分钟搞懂WebAssembly

俞凡

Wasm

【架构实战营】模块四

衣谷

架构实战营

自定义View:如何手写ViewGroup实现ListView效果

Changing Lin

11月日更

一些关于原宇宙的思考

Simon

元宇宙 Metaverse

面试必备(背)--Go语言八股文系列!

微客鸟窝

Go 语言 八股文 11月日更

Hive数据抽样与存储格式详解

五分钟学大数据

11月日更

模块四作业:千万级学生管理系统的考试试卷存储方案

dean

架构实战营

requests-html库初识 + 无资料解BUG之 I/O error : encoder error,Python爬虫第30例

梦想橡皮擦

11月日更

CentOS环境下Redis的安装和配置

Empty

redis

自动驾驶 传感器和计算硬件 易筋 ARTS 打卡 Week 76

John(易筋)

ARTS 打卡计划 arts

别被你的框架框住了

Teobler

angular.js 大前端 React 框架 编程范式

【LeetCode】最长和谐子序列Java题解

Albert

算法 LeetCode 11月日更

【Redis集群原理专题】(1)介绍一下常用的Redis集群机制方案的原理和分析

码界西柚

集群 redis cluster redis sentinel 11月日更

通过USB接入双目UVC协议外接人脸比对相机实现1:1比对开发

Todd Wong

数字化办公

CSS架构揭秘之Ant design

Augus

CSS 11月日更

kafka常用命令

williamcai

kafka

网络安全—如何从IP源地址角度,预防DDoS攻击?

郑州埃文科技

和12岁小同志搞创客开发:手撕代码,做一款亮度可调节灯

不脱发的程序猿

少儿编程 DIY 智能硬件 创客开发 Arduino

【解析】通证经济的分类及用途

CECBC

区块链,不是元宇宙的全部

CECBC

Android C++系列:Linux文件系统(二)

轻口味

c++ android jni 11月日更

Redis 实现限流的三种方式

大数据技术指南

11月日更

Go语言学习查缺补漏ing Day2

Regan Yue

Go 语言 11月日更

30分钟学习go语言

坚果

Go 语言 11月日更

Go语言正在向Git和GitHub迁移_Google_Sergio De Simone_InfoQ精选文章