如何为 Go 语言源码仓库贡献代码

栏目: IT技术 · 发布时间: 4年前

内容简介:二零一九年(2019)利用业余的时间做了一套按照官方指引,春节放假前提交修正并得到管理员的正反馈,然后一直关注了好久但不见代码被合并,一度以为自己的这个提交被忽略了,不过最近看到已经被合并到了其实整个提交过程还是比较流畅的,现在简单总结记录一下供自己以及他人参考。

写在前面

二零一九年(2019)利用业余的时间做了一套 《原汁原味 Go 语言学习》 的视频课程,主要涉及到 Go 官方的几个文档资料的学习。在翻译官方文档的过程中发现有一处错误(前前后后看了很多遍,每次看到都觉得不爽),调研后发现是 Go 源码仓库中的文档,于是心血来潮修正错误并提交了 commit,私心里还琢磨着如果代码被合并自己以后岂不就可以吹嘘是 Go语言源码的贡献者 了?

按照官方指引,春节放假前提交修正并得到管理员的正反馈,然后一直关注了好久但不见代码被合并,一度以为自己的这个提交被忽略了,不过最近看到已经被合并到了 Go主分支 。开心:smile_cat:。

其实整个提交过程还是比较流畅的,现在简单总结记录一下供自己以及他人参考。

为 Go 语言源码仓库贡献代码

我们往往忽略了官方材料的学习

由于每个人学习编程的方式不同,可能无法评估出编程的最佳学习方式;但是作为熟练程度的基准,语言的官方文档理应是其最佳的学习资料。以 Go 语言为例,可能市面上存在很多 Go 语言相关的书籍,但是任何一本书都无法让自己精通 Go 语言编程(如果有类似标榜的书籍,千万不要买);从这个角度讲,书籍只能作为编程语言学习的指引者——激起学习者的学习热情,启发学习者的学习路径——其他的技术细节和技巧仍然需要学习者自己去探索体会。

不过虽说编程语言的官方文档是最佳的学习资料,但是官方文档往往是枯燥无趣的,因此也难怪很多人都不喜欢读。可是,编程语言的学习与掌握本就是一个枯燥无趣的过程,又有什么办法……

如何为 Go 语言源码仓库贡献代码

只需参考 《 Contribution Guide 官方文档 》即可。

大家可以看到整个文档都是英文资料,且在提交代码让别人审核的过程中也都是英文沟通交流,因此这里关键的点或许是把英文学好……

从我个人的经验看,只要英文够好,确实发现了源码中不合理的地方,又觉得自己有好点子,都可以为 Go 语言贡献代码。为了破除大家对提交代码这件事情的神秘感,这里简单罗列一下 官方文档 里介绍的几个点:

  1. 首先准备好账户并签署贡献者协议(Google账户、Gerrit账户);
  2. 配置自己本地的环境(配置 git、配置 gerrit,后者是谷歌官方提供的一个小工具,可以保持自己的 commit 信息的规范);
  3. 修改完代码后就可以使用 gerrit 提交了;
  4. 提交完成后到 https://go.googlesource.com/ 可以观察进度,甚至可能需要根据修改意见进行内容上的阐述、修改等;
  5. 等提交的内容被完全认同以后,剩下的就是耐心等着被合并到 Master 主分支了。

小结

自己的代码被合并到主仓库,好像这份开心慢慢地也消散了。终于还是要踏踏实实地解决业务问题,如此自己的创造才是有价值的。


以上所述就是小编给大家介绍的《如何为 Go 语言源码仓库贡献代码》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Data Structures and Algorithms in Python

Data Structures and Algorithms in Python

Michael T. Goodrich、Roberto Tamassia、Michael H. Goldwasser / John Wiley & Sons / 2013-7-5 / GBP 121.23

Based on the authors' market leading data structures books in Java and C++, this book offers a comprehensive, definitive introduction to data structures in Python by authoritative authors. Data Struct......一起来看看 《Data Structures and Algorithms in Python》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码