做完这一步,可以成为一枚程序猿大牛!

引言

作为热爱技术的你,是否也羡慕 Apache PMC 或者 Committer,此篇文章渣渣皮带你迈出如何成为技术大牛的第一步。

选择项目

首先你需要选择你熟悉技术范围的或者实际生活工作中使用到的,这里我就是熟悉 [Paimon](Apache Paimon | Apache Paimon) (一个数据湖项目,从 Flink 项目发展出来,恰好想研究的也是实时相关的)的流程开始的。

不过最近几年国内开源还是比较火热的,好几个项目都进入 Apache 孵化了。这里列举一些,看是否你也有中意的。

除了上述国内贡献到 Apache 的项目,还有我们经常熟悉的 Spring、Mybatis、SpringBoot,以及国内的 dubbo、druid 等项目,大数据中的 Hadoop、Spark、Flink 这些大家如果有兴趣都是可以去参与的。

准备工作

  • 最好有个 Gmail 邮箱,你需要订阅用户邮件以及开发者邮件等,参与邮件中问题的回复也是对开源的贡献,并且一些重要的特性都会在邮件里面会讨论以及最后的投票
  • 本地 Git 的配置,这个就不用我教你们了吧
  • 还需要注册 Github 账号,这个全球最大男性交友网站大家最熟悉不过了吧

那么下一步正式开始我们的提交之旅吧

第一步:订阅邮件

一般项目的 Contributing 页面都会告诉你怎么去给项目做贡献。

比如我们的第一步就是订阅开发者邮件,如下图所示:页面也会给出其他的邮件选择

image-20230727082430099

这里我们先订阅开发者邮件,

  1. 首先用自己的邮箱给 dev-subscribe@paimon.apache.org 发送邮件即可
  2. 收到官方回复的确认邮件
  3. 回复该邮件,内容随意,我这里简单回复 Confirm
  4. 会收到欢迎你订阅的邮件,这个时候就表示成功订阅了,如下图所示
image-20230727082920100

第二步:选择问题

这一步首先从Github 的 issue 里面去找找看,一般新项目都会设立 good first issue 的 tab 的问题,具体如下样式:

image-20230726223014321

当然,如果你对项目很熟悉的话,也可以从 doc 或者 bug 的类似 issue 开始去解决。

image-20230726223348368 image-20230726223454169

那么选好 issue 以后,就开始要准备写代码解决问题了。

第三步:fork 代码

看到项目顶部的选项,有一个 Fork 选项,需要将项目 fork 到自己的仓库项目下面

image-20230726223544971

下一步就看到具体选项,这里直接 Create fork 就行。

image-20230726223652577

接下来就可以看见自己的仓库里有代码了,如下图,可以看见是从 apache 的项目 forked 出的项目。

image-20230726223758808

第四步:编写代码

接下来就是 clone 代码,然后本地开始编写代码了。

1、如下图所示,选择自己喜欢的方式 Clone 代码就好

注意:一定是 clone 自己仓库已经 forked 的项目,不是 apache 下的项目地址

image-20230726224054939

2、接下来就是打开本地的代码,这里我使用的编辑器是 IDEA,对于 Java 开发者来说已经是再熟悉不过了。不过这里需要新建分支去开发,可以使用命令来执行,如下操作(这里的分支名可以随意些)

git checkout -b PAIMON-1141

3、提交代码到远程分支

使用 commit,然后 push 命令即可

git commit -a -m "[Feature] Support month, day, and hour expressions for cdc synchronizing tables action"
git push origin PAIMON-1141

第五步:提交 PR

本地开发好代码后,就可以进行下一步骤了,就是提交 PR。

1、进到仓库的 Pull requests 页面,点击【New pull request】按钮操作

image-20230727091253329

2、下一个页面中选择自己提交的分支,这里就可以对比你提交的信息和主仓库分支上的信息的差异,点击【Create pull request】即可

image-20230727091340595

3、按照提示的 PR 模板,填写相应的信息,提交即可

image-20230727091801166

第六步:CR 代码

等待 Committer 对你的代码进行 CR,如果是有需要需改的意见,会在 PR 里面进行讨论,这个时候你就需要重新修改本地的代码,充分测试好,然后重新 commit 代码,push 到远程分支上去

image-20230726224609939

第七步:等待合并代码

最后问题都充分解决后,会就得到 +1 的认可,剩下等待代码被合并到 master 分之了。

image-20230726224740910

到这里,你的代码就已经合并到 master 主分支上了,这样看起来是不是也很简单,等下次软件发版本的时候,你的代码就在里面了,恭喜你,成功了 code contributor!

常用英文

这里附带一些常用的英文,送给英文不太好的童鞋,这些在社区中可以用的上

Hi, I want to fix this issue, you can assign it to me.

I am interested in implementing this task, please submit a PR in 2 weeks if you leave the message.

Thanks for your contributing. Left some comments.

参考资料

  • 这个是 Apache PMC 的 Jark Wu 写的分享文章:分享了如何从小白到 Committer 的成长之路,值得一看

如何从小白成长为 Apache Committer?

成为Apache顶级项目核心贡献者是一种什么样的体验? (qq.com)

  • Apache Linkis 的贡献指引:写的比较详细,有视频,也有专门针对新手项目的指引

Apache Linkis 官网贡献指引(视频)

Apache Linkis 项目贡献指引(视频)

Apache Linkis新手项目

保姆级教程:如何成为Apache Linkis文档贡献者(如果你用 Github Desktop 客户端,这个是很好的介绍,全图形化操作)

  • InLong 的提交代码指引

如何提交代码 | Apache InLong

本文由 mdnice 多平台发布

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值