问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

参与开源项目并贡献代码的完整指南

创作时间:
作者:
@小白创作中心

参与开源项目并贡献代码的完整指南

引用
1
来源
1.
https://developer.aliyun.com/article/1640007

随着开源软件的普及,越来越多的技术爱好者想要参与开源项目并贡献代码。但是,对于初学者来说,参与开源项目的流程和注意事项可能并不清楚。本文将详细介绍如何参与开源项目并贡献代码的完整流程。

如何参与开源项目

参与开源项目的途径有很多,最好就是通过GitHubGitee等代码托管仓库寻找感兴趣的项目。

如果你对Vue相关技术感兴趣,就可以查找仓库名称中带有Vue的项目。一般仓库都会有中文介绍,如果没有翻译一下即可。

了解开源项目的途径可以通过各大框架和公司的开发者大会,如:

  • VueConf
  • ViteConf
  • HDC(华为开发者大会)

这些会议都会介绍一些新出的技术和功能库等,如果感兴趣的话就可以通过里面的链接找到代码仓库。

贡献代码的流程

1. Fork仓库到自己仓库

首先需要Fork你想要参与项目的仓库到自己的仓库。


什么都不要修改,直接点击Create fork按钮。

等待一会儿后仓库就会Fork到你自己的仓库中。

2. Clone到本地

接下来的流程就和自己的项目操作一样了,先Clone项目到本地,然后修改或者添加功能,提交,推送。

但有几个点需要注意:

  1. 首先将项目Clone到本地,这里使用WebStorm做演示。

这里的URL需要填写你Fork到自己仓库的地址。

3. 阅读贡献指南和README.md文件

一个开源项目里通常会有CONTRIBUTING.mdREADME.md文件,这两个文件非常重要。

  • CONTRIBUTING.md:里面包含了贡献代码的要求和规则,贡献代码前必看。如果没按照他们的规则提交代码可能会被无视或者直接关闭PR。文件一般在项目根目录或者.github文件夹里面。
  • README.md:里面包含这个项目的介绍和功能,有助于你快速了解这个项目的功能和使用的技术。文件一般就在项目根目录。

4. 提交代码

当我们已经浏览过需知文件后就可以开始自己的编码。比如修复一个bug或者开发一个新功能,我们可以去该项目的Issue列表中查找需要解决的问题。

假设你找到一个问题,可以先点进该Issue询问是否可以由你来解决(语气一定要礼貌,回复慢也不要急!)。

如果你找到了一个你感兴趣的问题并决定去解决,就可以在本地修改代码。修改代码前一定要新建一个分支!如果对Git操作不熟悉,可以查阅相关资料。

修改完成后提交代码。注意提交代码时的提交消息有格式要求!

  • 假如你是修复bug需要这样:fix(你修改的地方或者bug介绍),例如:fix(index.ts) fix(修复了首页显示错误的问题)
  • 假如你是添加新功能:feat(新功能的名字),例如:feat(新增了文章页面)
  • 假如你是修改项目文档网站的内容:docs(修改的地方或者修改的介绍),例如:docs(index.ts)

然后在后面加个冒号写你代码实现的功能或者作用,例如:docs(index.ts):修改了错误的类型提示

常用的分类就是以上几个。然后详细介绍内容需要你尽可能详细的表达你贡献的代码的作用。

完整示例:

确认提交消息没有问题之后就可以点击提交并推送了。

提交成功后回到你自己Fork过来的仓库会看到一个按钮。

点击这个按钮然后点击Open Pull Request 创建一个PR。

点击这个按钮后就会出现如下页面。

在这里你可以继续详细的介绍或者不改动,直接点击创建PR。

这里有一个建议:如果你是修复Issue里面的问题,可以在描述里面写fixes issue的id。这个红框框里面的就是Issue的id。

写上fixes后项目管理员在看你的PR时会知道你在修复Issue的哪个问题,审核速度会更快。

一切没问题后点击Create Pull Request按钮创建一个PR等待项目管理员来审核你的代码就可以了。

一般审核的时间是2-3天,一定不要急,且沟通的过程中要礼貌和言简意赅。

如果通过了就会显示如下页面:

恭喜你成功贡献一次代码啦!!!👏👏👏

如果没通过也没有关系,管理员一般会告诉哪里有问题或者你这个功能不够好或者他不需要等问题。

大家不要气馁,沉下心来多参与几次,总会成功的。

注意事项

  1. 沟通要礼貌,表达意思要准确。
  2. 代码质量和逻辑要过关,不然审核代码不会给你通过的。
  3. 不要气馁,没有什么事情是一次就能干好的。失败是成功之母,当我们参与了多个项目的贡献后,就会知道这个事情不能急。
© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号