如何成为一个合格的ASF贡献者?

本文由 ASF Member 孙金城(金竹)分享,上一期我们介绍了 Apache 软件基金会的组织架构及运行机制,本期作者将结合个人经历分享如何参与 Apache 项目并成为合格的贡献者。

其实每个人参与社区贡献的机缘不一样,但无外乎两种:

  • 偶发事件 – 由于参与某项工作,无选择的就参与了某个开源项目。(我就是这种,很自然的就跟着 蒋晓伟 老师踏入了 Apache Flink 之旅)

  • 因爱而求 – 每个码农都有一颗想让自己的的代码被应用全球的梦想追求!这梦想的实现要依托有开源的力量,ASF 完全可以为你营造最好的实现梦想的环境。

如何成为一个合格的ASF贡献者?

如何成为一个合格的ASF贡献者?

ASF 项目目前分为两大类:

  • 孵化器项目 – 是正在孵化的项目,也就是,在成为 ASF 顶级项目之前,需要在ASF 进行孵化,当从孵化器毕业之后就会成为 Apache 顶级项目。参与孵化器项目的好处是你能对项目有更早的参与,有多细节变化的了解,也很容易得到该项目的重视:),目前 ASF 所有孵化器项目列表请这里查阅!

  • Apache 顶级项目 – 这是已经从孵化器毕业的 Apache 顶级项目,顶级项目的运作一般已经完全符合 Apache Way。直接参与顶级项目的好处是能开始就接触很规范的社区贡献方式和更高的质量代码,有更多的学习资料和更多的参与者。目前 Apache 顶级项目列表,可以查阅这里!

一旦选择参与某个项目,不论在什么情况下,你都要听从自己的直觉,做你认为更好或者不同的事情。永远都不忘初心,坚持自己所坚持的,也永远牢记上面的原则,其中你会发现“给世界带来微小而美好的改变”非常受用。

假如,你在查看文档时候,发现了某个链接的错误或者 typo 错误。假如,你在使用产品的过程中发现了问题,请不要坐视不理,径直绕开,或者向社区提出问题,等待其他人来修复,因为这正是你贡献社区的好机会,解决这些你能看到的问题,因为,在解决这个问题的同时,也许会有新的问题被你发现~~ 进而你就入道啦:)

准备工作

目前 ASF 开源项目都是在 github 上面托管的。所以正式参与ASF开源贡献之前你要做一些准备工作:

创建一个 github 账号

点击创建,为了演示,我创建了一个“pyflink”账号 :)

Fork 你要参与的项目

以 Apache Flink 为例,如下:

如何成为一个合格的ASF贡献者?

Clone 代码到本地

做代码贡献之前需要 Clone 你刚才 fork 的 Flink 代码到你本地,以备提交第一个社区贡献 PR!

如何成为一个合格的ASF贡献者?

阅读项目贡献说明

一般具体项目会有介绍如何参与该项目的贡献,以 Apache Flink 为例 就有关于如果参与 Flink 社区贡献的说明, 比如:

Apache Flink is developed by an open and friendly community. Everybody is cordially welcome to join the community and contribute to Apache Flink. There are several ways to interact with the community and to contribute to Flink including asking questions, filing bug reports, proposing new features, joining discussions on the mailing lists, contributing code or documentation, improving the website, or testing release candidates.

详情查阅:

https://flink.apache.org/contributing/how-to-contribute.html

订阅邮件列表

社区问题大多会在具体项目的社区邮件列表里面进行讨论,所以邮件列表是了解社区动态最重要的输入,以 Apache Flink 为例,需要订阅 开发邮件列表和用户邮件列表,如下:

  • user-subscribe@flink.apache.org / user-zh-subscribe@flink.apache.org

  • dev-subscribe@flink.apache.org

首先,点击上面的 link,会引导你给 xxx-subscribe@flink.apache.org 发送邮件。然后你会收到官方确认邮件。最后你回复确认邮件之后还会收到一封欢迎邮件,也就意味着你订阅成功了!注意上面每个邮件列表都需要单独发起订阅。

OK, 到这一步你已经完成了为 Apache Flink 做贡献的准备工作了:),接下来就要寻找做贡献的机会了!

创建 issue 或者解决 issue

目前大多数 ASF 项目的问题采用 JIRA 管理(当然也有例外),我们以 Apache Flink 为例,当用户发现的问题可以在这里查阅。如果你发现有你感兴趣的 issue,不要犹豫,直接在 JIRA 下留言,你想帮忙解决这个问题,并 share 你解决问题的方法,这样社区会有 Committer 来与你沟通了!以一个之前我向 Flink 提交的 issue 为例 FLINK-13471:

如何成为一个合格的ASF贡献者?

点击“Compare & pull request”,进行 PR 创建,如下:

如何成为一个合格的ASF贡献者?

为你打气

我相信在 ASF 开源贡献之旅,你会有很多次要放弃的念头,你会遇到很多怀疑自己的时刻,你会时不时的怀疑社区管理者是否有问题之,如果你想把它当作一生的乐趣,在你没有找到乐趣之前,你一定需要下面的三句话:

  • 给世界带来微小而美好的改变

  • 把幸运种子种到别人身上去,你才会有幸运

  • Never, Never, Never Give Up(永不放弃)

你参与社区的目标是为了尽自己微薄之力,来让 ASF 开源社区更美好!
你参与社区的信念是为其他人播撒幸福幸运的种子,你并没有在乎得到什么回报,你相信“因果”!
你参与社区的坚守是永不放弃,因为只要我在前行,必将抵达彼岸!永不放弃要深刻你脑海!

与大家共勉~

小结

本篇为大家介绍了参与开源的利好、原则、以及介绍为自己的第一个社区贡献需要做怎样的准备。最后,我目前在负责 Apache Flink 的 PyFlink 建设,诚挚邀请想参与 ASF 社区贡献的你,以 PyFlink 作为你的开源之旅的首站!

Tips:点击「阅读原文」可查看作者原版博客。


# 社区推荐 #

5月16日,2020 首场 Meetup 重磅上线。一如既往,本次 Meetup 邀请了来自袋鼠云、网易云音乐、有赞及阿里巴巴的四位技术专家为您现场直播,让您足不出户,有直播看、有干货学、有奖品拿

如何成为一个合格的ASF贡献者?

你也「在看」吗/p>

来源:Apache Flink

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年4月12日
下一篇 2020年4月12日

相关推荐