如何在 GitHub 上做一个优秀的贡献者?

本篇文章摘自我在知乎上的一个回答 - 《如何在 GitHub 上做一个优秀的贡献者?》。

下面是正文内容。


关于如何做一个优秀的贡献者,GitHub 官方之前写过一篇指南《How to Contribute to Open Source》,里面给出了非常清晰的回答。

下面我就文章给出的内容索引及参考,简单回答下这个问题。

为什么要参与开源?

1)优化技能

通过贡献代码或参与开源活动,在解决问题的同时让自己的专业技能得到提升。

2)帮助你遇见志同道合的人

开源意味着自由与开放,所有人都可以参与到一个开源项目的建设,在参与建设的过程中,大家互相学习,互相成长,有着相同的做事理念,很容易就成为了志同道合的朋友。

3)学会如何传授

当你负责一个项目的建设时,往往有人会向你提问或寻求项目中某个问题的解决方案,这时候就需要你善用自己的语言或文字组织能力,向他人解释如何修复和处理好该问题。

4)积累社区声望

对于个人职业生涯的发展,参与到一个开源项目能让你更快累积个人声望,项目的发展带动了你个人的发展,这是个正向循环的过程。

5)择善而从

三人行,必有我师焉。在团队协作的过程中,总有些人出类拔萃,他们身上有许多值得你学习的优良品质与专业技能。参与开源的同时,也会去主动学习他人的做事方法。

6)从小做起

开源并不要求你必须投入所有精力来做事。当你无意发现一个开源项目有错别字,并提交改进时,这就是参与了开源。

贡献究竟意味着什么?

贡献并不意味着你要贡献项目代码,所有人都可以利用自己的专业技能来推动开源项目的发展。不论你是开发者、设计师还是产品经理,甚至一名学生都可以通过善于自己的组织能力,来参与贡献,帮助开源项目得到更好的发展。

面对新项目的正确姿势?

不论你所处的是哪一个领域,在面对未知事物时,脑子里都得抽象出一个框架,这个框架能帮你快速的全面了解一个事物。面对开源项目也是如此。

一个成熟且完善的开源项目,往往由以下几部分构成:

  • 参与者

    • 作者

    • 拥有者

    • 维护人员

    • 贡献者

    • 社区成员

  • 文档

    • 许可证

    • README

    • 流程文档

    • 行为准则

    • 技术文档

    • 基础教程

  • 协作方式

    • 发起 issue

    • 提交 PR

    • 社区讨论

    • 实时沟通

关于上述内容的具体定义,如何你还不太了解,可以看下文章的 Orienting yourself to a new project 一节。

如何找到那个你想贡献的项目?

在面对开源项目时,先端正态度。

"Ask not what your country can do for you - ask what you can do for your country."  - John F. Kennedy

要参与到开源,就必须成为那个能发现或解决问题的人。找到那个你感兴趣的项目,从点滴小事做起,修复文档的无效链接和错别字是参与开源,发现问题并详述、复现问题也是参与开源。

28% 的贡献工作 来源于对项目文档的优化,如更正错别字、优化排版、提交翻译。

你可以通过下面的这些渠道,来发现你感兴趣开源项目。

  • GitHub Explore

  • Open Source Friday

  • First Timers Only

  • CodeTriage

  • 24 Pull Requests

  • Up For Grabs

  • Contributor-ninja

  • First Contributions

或者你也可以看下我写的这篇文章。

https://zhuanlan.zhihu.com/p/55174293

如何提交贡献?

为了更加高效的沟通与合作,请确保在你进行提问或提交 PR 的时候,做到了以下几点:

  • 给定上下文,别没头没尾

  • 提前做好准备工作

  • 提前阅读相关文档与资料

  • 说话简明扼要

  • 尽量让沟通信息公开透明

  • 提问时请保持耐心

  • 尊重社区的决定

  • 最重要的是,保持高雅

做到上面几点后,你还需要搜索项目 issue、README、stackoverflow 等渠道,确保问题未被其它人修复。

最好,通过以下几种方式来提交贡献:

  • GitHub issue - 发起提问,进行讨论

  • GitHub pull request - 提交解决方案

  • 其它渠道 - Stack Overflow、IRC、Slack

提问的时候,为了减少双方沟通的时间,请使用最为高效直接的提问方式。

推荐阅读:提问的智慧

在你参与贡献之后

每个人在一开始参与贡献时,内心都较为忐忑。一般在你参与贡献后,会发生以下几种情况:

1)没有得到任何反馈

首先,确保你提前核对过项目的各种情况,具体可查看该 核对清单。

如果一切都正常,可在一周后尝试联系项目相关人员,询问具体情况。联系的时候,请尽量不要使用私人渠道联系项目维护人员,因为开源的同时也意味着所有信息要尽量保持公开透明。

当然,作者有在项目中提供自己的联系方式除外,但私下沟通的所有与项目相关的信息,最好保留一份上传到该问题相关的讨论帖上。

比较糟糕的情况是,提交的贡献一直没有得到反馈。如果是这样,也请你不要灰心,生活总有一些不可控的事情发生,你要做的,是接着寻找下一个项目,调整心态,重新来过。

2)有人更改了你的贡献

在你得到相关通知后,出于礼貌与高效沟通,请及时给出反馈。因为他人可能花了不少时间来审核你的问题 / 代码,然后发起的更改提交。

如果你没有时间处理他人提交的更改,也请提前告知提交者与项目维护人员,找到一个可以接手并处理该问题的人。

3)你的贡献未被接受

这种情况很正常,一般作者也都会说明未被接受的具体原因。如果没有,可以在项目的相关讨论帖下询问作者具体原因。但无论如何,请尊重作者的决定,不要开撕。实在不行,你也可以 fork 一份代码自己玩。

4)你的贡献被接受了

恭喜你,你作出的贡献真真切切帮到了其他人。希望后面接着坚持,请记住,千里之行始于足下。


可点击「阅读原文」查看文章详细内容。

GitHubDaily - 挖掘开源的价值

  • 微博: @GitHubDaily

  • 知乎:GitHubDaily

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值