社区贡献

openGauss是一个开源社区,完全依赖于社区提供友好的开发和协作环境。

在参与社区贡献之前,请先阅读并遵守openGauss社区行为守则

1. 注册Gitee账号

openGauss源代码托管在码云(Gitee):https://gitee.com/opengauss

请参考http://git.mydoc.io/?t=179267注册您的码云(Gitee)账户,并在http://gitee.com/profile/emails设置您的主邮箱。

2. 签署CLA

在参与社区贡献前,您还需要签署openGauss社区贡献者许可协议(CLA)

3. 找到您感兴趣的SIG

openGauss社区按照不同的SIGs(Special Interest Groups)来组织,以便于更好的管理和改善工作流程。 SIG是开放的,欢迎任何人加入并参与贡献。每一个SIG在码云(Gitee)上拥有一个或多个代码仓库。 您可以在SIG对应的代码仓库上提交Issue,参与Issue讨论,提交Pull Request,参与代码检视等。 您可以从如下的SIG列表中找到您感兴趣的SIG。

SIG名称 职责范围
SQLEngine 负责openGauss社区SQL引擎的开发和维护。
StorageEngine 负责openGauss社区存储引擎的开发和维护。
Connectors 负责openGauss社区Connectors的开发和维护。
Tools 负责openGauss社区工具的开发和维护。
Docs 负责openGauss社区文档的开发和维护。
Infra 负责openGauss社区基础设施的开发和维护。
Security 负责openGauss社区安全的开发和维护。

4. 开始您的贡献

4.1 给自己分配Issue

首先找到openGauss社区的Issue列表:https://gitee.com/organizations/opengauss/issues 如果您愿意处理其中的Issue,您可以将它分配给自己。 只需要在评论框内输入/assign,机器人就会将问题分配给您。 每个Issue下面可能已经有参与者的交流和讨论,如果您感兴趣,也可以在评论框中发表自己的意见参与Issue讨论。

4.2 提交Issue

如果您准备向社区上报Bug或者提交需求,请在openGauss社区对应的仓库上提交Issue。 如果您不清楚Bug或者需求属于哪个仓库,请在openGauss社区Community仓库提交Issue。 您也可以以Issue的方式为openGauss社区贡献自己的意见或建议。 提交Issue请参考Issue提交指南

4.3 提交Pull Request

提交Pull Request请参考openGauss社区Pull Request提交指南。 如果一次提交的代码量较大,建议将大型的内容分解成一系列逻辑上较小的内容,分段进行提交会更便于代码检视。 如果您的Pull Request没有引起足够的关注,可以在对应SIG的线上交流或者线上会议求助。

4.4 检视代码

openGauss作为一个开放的社区,我们希望所有参与社区的人都能成为活跃的检视者。 检视代码请参考补丁审核的柔和艺术

5. 社区角色

我们欢迎所有人参与openGauss社区贡献,我们的目标是发展一个由贡献者组成的活跃、健康的社区。关于Maintainer、Committer等社区角色,请参考openGauss社区角色介绍