前言
开源这件事情在软件开发领域一直是一个高频话题,我们工作中不管是使用到的工具还是第三方库都离不开开源的支持。
(资料图片)
近期由于工作的原因,我需要经常和 Apache Pulsar社区沟通,同时也会将日常碰到的问题反馈给社区,包括一些 bug,一些我能修的也是顺带就提了一些 PR。
之前或多或少我也参与过其他的开源社区,但和现在的还是有些许的不同:
以前我更多的是个人开源项目,偶尔也会有其他开发者向我的仓库贡献代码。
也参与过其他个人作者或者是社区性质的项目,但流程上没有那么正规或者是标准。
简单来说就是以前就是小打小闹,Pulsar毕竟是 Apache社区的顶级项目,参与的整个流程要求也会比较复杂,当然学到的知识也会更多。
这半年时间大大小小提了十几个 PR ,也逐渐捋清楚了一些上手的方法和套路,所以如果你也想参与开源,但苦于不知道如何入门,看完后希望对你有所帮助。
为什么参与开源首先还是来聊聊参与开源的好处,了解之后也许会让你有路转粉。
首先最明显的一点就是让你对贡献的这个项目更加深入的了解,我们常常都在面试的时候被问到对 XX 框架的熟悉程度,哪怕你在简历里写的天花乱坠也没有是这个项目 Contributor更具有说服力。
其次是沟通交流能力也会得到锻炼,开源社区往往都是以 github issue/PR,或者是 Mailing List的方式沟通交流,这样的沟通方式和我们常用的微信、QQ 这类及时通讯工具有着本质的区别。
往往需要我们有了冷静的思考加上清晰的描述才会将自己的观点发布出去,这样不自觉的就会养成自己的总结能力,这个能力对于内容创意内容工作者来说非常重要。
还有一个更明显的好处就是对个人的能力背书,大家常说的 show me the code,而 GitHub就是最好的方式。
当你是某个知名开源项目的 Contributor甚至是 Committer/PMC就已经足够证明自己的能力了。
如何参与如何参与呢,其实也很简单,不外乎有以下几种方式(由易到难):
一些 typo类的修复。
回答社区中用户的问题。
使用过程中遇到 bug,直接反馈,有兴趣的话最好是自己能修复。
修复现有 issue列表中未解决的 bug。
软件不具备自己需要的功能时提交 feature提案并实现。
不管是哪种方式我的建议是在准备贡献之前都应该先看看官方提供的贡献指南,通常在官网就能查看。
即便是最简单的修复 typo,因为越是专业的项目每个 PR 的合并都是严谨的,提前了解后可以避免犯一些基本错误从而影响积极性。
这里我以 Pulsar为例:官网有着详细的贡献指南,包括环境搭建、代码约定、PR/git commit语义等各种规范。
这里我重点强调 PR 的语义,一个好的 PR 规范更容易引起社区成员的注意,毕竟我们每一次提交都需要 Committer的同意才能合并。
还是以 Pulsar为例,在提交 PR 前一定得先看看这里的规范要求,不然很可能第一步就会吃瘪。
可能遇到的问题下面讲讲贡献过程中可能会碰到的问题。
在上面讲到的难度排序中将修复个人 issue 排在了其他 issue 之前了,这是因为往往对自己提交的 bug 更熟悉,而社区其他人反馈的问题大概率会被老手认领。
加上自己也不熟悉,可能在自己研究复现的过程中就把自己劝退了。
认领 issue这里还有个小技巧,当我们准备修复一个不是自己提交的 issue 时,最好是在评论区让 Committer将这个任务分配给你,这样社区成员就不会做重复工作了。
类似于这样。
同时我们在查找可以修复的 issue时也要注意这个 issue 有没有被认领以及是否有 PR 关联。
有时候 issue并没有被指定但也有相关 PR在处理该问题了,这时我们就可以过滤掉这个 issue。
help want也可以找找带有 help want标签的 issue,这类问题往往会相对简单,修复起来也更容易。
社区反馈较慢还有一个比较常见的问题是自己提交的 issue 或者是 PR 迟迟没有人处理。
我们可以先看看这个 issue 对应的代码最近主要是哪些人在维护,这个在 IDE 中配合 GitToolBox插件就很容易看出来。
后面的 ID 往往是 PR号,我们可以通过这个 PR找到对应的作者,然后尝试在 issue评论区艾特对方。
如果依然没有回复,那我们也可以给开发组发送邮件。如果还是没有回复,比如我这个?
那也还有一个办法,就是尝试在社交媒体(GitHub 首页、技术群)上找到 Committer 的微信,直接私聊的方式让对方帮忙推进。
当然也有一些项目长期没有维护了,这种 PR 要做好心里准备,很有可能对方不会理你;这点在国内某个企业的开源项目中比较常见。
总结总的来说想要做好开源得有耐心和长期坚持,同时给自己带来的好处也是物超所值的,Apache这类专业的社区我也才参与了半年,后续也会长期坚持下去,也希望哪天可以积累到成为 Committer后再和大家分享。
往期推荐
从 Pulsar Client 的原理到它的监控面板
使用 ChatGPT 碰到的坑
Grafana 的奇技淫巧
在这个大环境下我是如何找工作的
云原生背景下如何配置 JVM 内存
点分享
点收藏
点点赞
点在看
标签:
image png前言开源这件事情在软件开发领域一直是一个高频话题,我们工
1、根据IEC(国际电工委员会)有关文件的定义,音响放大器按工作状态分
近几年读书APP覆盖范围越来越广,纸质书逐渐演变为电子书,其中微信读
我的小微企业和合作公司签订了一个施工合同,合同约定我给甲方施工完成
钢铁行业周报:需求有望逐步修复
西测测试(301306)08月07日在投资者关系平台上答复了投资者关心的问题。
1、只缘身在此山中上一句是不识庐山真面目。2、原文《题西林壁》作者:
海马汽车发布7月份产销数据,7月合计汽车销量532辆,同比下降67 6%;本
(原标题:路桥信息北交所发行结果:中签率%创今年3月以来新低)挖贝网
【华为15亿成立房地产公司,由华为投资控股有限公司全资持股】具体的是
虽然福建舰至今还未投入使用,但是美方已经坐不住了,称美国的5架轰炸
通讯员施诗为加强社区治安管理,及时发现辖区治安工作中的薄弱环节,切
燕麦米煮粥很简单,只需要几个简单的步骤即可。首先需要将燕麦米用清水
1、“000721”是中国移动(中国移动通信集团有限公司)的股票代码,...
App8月7日消息,传媒板块午后持续走强,幸福蓝海20cm涨停,南方传媒午
新京报讯(记者薛晨)8月7日,据贵州茅台官方公众号消息,茅台集团与绿
日前,记者从省发展改革委获悉,为全面落实省委、省政府关于农民增收相
日前,奇富科技发布2023年消费者权益保护工作半年报(以下简称“报...
赛后,热刺新帅波斯特科格鲁不可避免的被问及了他阵中第一球星的转会绯
为弘扬社会良好风尚,展现大学生暑期社会风采,通过实践活动达到传递知
截至发稿,该股涨幅收窄,涨近3%,报53 52元,换手率18 95%。
中国能源新闻网是由国家能源局主管,中国能源传媒集团有限公司、中电传
起跳、扣球、得分……8月5日,在成都大运会男排半决赛现场,看台上...
港股通持股解析|2023年8月4日
当你还在大热天挤地铁去市区图书馆人挤人、花三四十块点一杯摩卡蹭咖啡
2023年有一个非常热的词“新闻学”,就在日前,高考志愿填报前夕,...
盛夏时节,喜讯传来。在2023年河南省全民科学素质网络竞赛工作中,宁陵
1、故人西辞黄鹤楼,烟花三月下扬州。2、孤帆远影碧空尽,惟见长江天际
今天小红来为大家带来的是丹青劫书评,丹青劫,让我们一起往下看看吧!
记者从舒兰市抗洪抢险指挥部获悉:此前赴舒兰市开原镇、金马镇抗洪抢险