前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何在 GitHub 上做一个优秀的贡献者?

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

作者头像
GitHubDaily
发布2019-03-26 10:46:36
9540
发布2019-03-26 10:46:36
举报
文章被收录于专栏:GitHubDailyGitHubDaily

本篇文章摘自我在知乎上的一个回答 - 《如何在 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)你的贡献被接受了

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

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-02-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 GitHubDaily 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 为什么要参与开源?
  • 贡献究竟意味着什么?
  • 面对新项目的正确姿势?
  • 如何找到那个你想贡献的项目?
  • 如何提交贡献?
  • 在你参与贡献之后
相关产品与服务
Prowork 团队协同
ProWork 团队协同(以下简称 ProWork )是便捷高效的协同平台,为团队中的不同角色提供支持。团队成员可以通过日历、清单来规划每⽇的工作,同时管理者也可以通过统计报表随时掌握团队状况。ProWork 摒弃了僵化的流程,通过灵活轻量的任务管理体系,满足不同团队的实际情况,目前 ProWork 所有功能均可免费使用。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档