写点什么

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:302927
用户头像
臧秀涛 略懂技术的运营同学。

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

关注

评论

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

2021总结和2022趋势--《香帅中国财富报告》(7/100)摘录

hackstoic

投资

发布uniapp【uniapp 专题 02】

坚果

1月月更

一线开发人员,你对项目了解多少?

蜜糖的代码注释

Java 程序员 后端技术

25 Prometheus最佳实践原则

穿过生命散发芬芳

Prometheus 1月月更

从零开发区块链应用(六)--gin框架使用

杰哥的技术杂货铺

golang 区块链 gin框架

【架构训练营-模块一】

默光

微信 架构设计

从零开始学Mysql - 字符集和编码(下)

懒时小窝

微信业务架构图、学生管理系统毕业架构设计

石小天

架构实战营

sonic:基于 JIT 技术的开源全场景高性能 JSON 库

火山引擎开发者社区

原生云

IDEA注释模板,惊艳了,动作要快,姿势要帅

碌碌无为小码农

Java 架构 程序人生 编程语言 经验分享

微信业务架构图与“学生管理系统”毕设架构设计

唐尤华

架构实战营

从零开发区块链应用(七)--gin框架参数获取

杰哥的技术杂货铺

golang 区块链 gin框架

架构设计图

风中奇缘

架构实战营 「架构实战营」

2021 大促 AntMonitor 总结 - 云原生 Prometheus 监控实践

SOFAStack

云原生 分布式架构 SIGMA

干掉 PowerDesigner,这款数据库设计神器真的绝了!!!

沉默王二

【译】什么是测试驱动开发

宇宙之一粟

测试驱动开发 1月月更

03uniapp的生命周期【uniapp 专题 03】

坚果

小程序 uniapp 1月月更

Spring Boot Admin 添加报警提醒和登录验证功能!

王磊

Flink 实现 MySQL CDC 动态同步表结构

腾讯云大数据

flink 源码 流计算 Oceanus

有的时候我觉得我不会 Markdown

冴羽

前端 写作 markdown markdown语法 vuepress

来自未来的交互设计!当电影中的一切变为现实,设计师要如何进化?

博文视点Broadview

基于Calcite的分布式多数据源查询

麒思妙想

MySQL 数据库 Apache Calcite gbase8a

投稿开奖丨“轻量应用服务器”征文活动(11&12月)大奖公布

阿里云弹性计算

阿里云 轻量应用 征文投稿开奖

架构学习【01】——架构图初探

tiger

架构实战营

从零开发区块链应用(十)--golang协程使用

杰哥的技术杂货铺

golang 区块链 gotoutine

TiDB Cloud 上线亚马逊云科技 Marketplace,为全球用户提供云端一栈式实时 HTAP 数据库体验

PingCAP

从重大漏洞应急看云原生架构下的安全建设与安全运营(下)

腾讯安全云鼎实验室

云原生 安全漏洞 容器安全 安全服务

RocketMQ 源码探究 -- 延迟队列实现

周文童

RocketMQ #java

对管理金字塔游戏的感悟:管理的本质是协作

panda

管理

01uni-app基础教程 环境配置【uniapp专题1】

坚果

uni-app 1月月更

ReactNative进阶(二十九):BloC 模式

No Silver Bullet

React Native 1月月更 BloC

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