+++
title = "社区贡献"
+++

## 如何参与社区

### 贡献前准备

注册gitee账号。注册地址 [https://gitee.com/signup](https://gitee.com/signup)，如果已有gitee账号，请跳过。    

签署社区CLA。签署CLA是参与社区前提，复制CLA内容[https://gitee.com/openeuler/community/blob/master/zh/CLA.md](https://gitee.com/openeuler/community/blob/master/zh/CLA.md)并填写个人信息后，发送邮件到 <contact@openeuler.org>，待管理员确认后签署成功。 注：暂未支持在线签署，待基础设施完善后后续将采用在线签署。    

选择贡献项目，所有项目参见：[https://gitee.com/openeuler](https://gitee.com/openeuler)。 阅读项目下 ```CONTRIBUTING.md``` 文件了解该项目贡献指导。 如果您不确定哪个项目适合您，建议参考社区 [SIG](https://gitee.com/openeuler/community/blob/master/zh/Sigs.md)组介绍。    

了解项目的编码规范。了解项目编码规范就有助于您的提交快速接纳，在每个项目里有关于该项目的编码规范介绍，文件名为```code-of-conduct.md```，位于项目根目录下，如果项目下未提供，请参考社区编码规范，地址：[https://gitee.com/openeuler/community](https://gitee.com/openeuler/community)。注： 规范上线准备中。<br>    

### 参与贡献

  openEuler社区采用[gitee](https://gitee.com/openeuler)作为开发系统，所有的贡献均通过该平台完成，我们欢迎您通过参与如下贡献：

#### 提交bug

openEuler社区每个项目均集成提供issue管理，如 infrastructure项目issue管理位于[https://gitee.com/openeuler/infrastructure/issues](https://gitee.com/openeuler/infrastructure/issues)，如果您发现任何openEuler相关问题或者改进建议，建议通过各自项目issue提交给社区。具体如何提交issue，请参见[这里](https://gitee.com/openeuler/community/blob/master/CONTRIBUTING.md#report-issues)。    

**注意：** 在提交issue前，建议先通过issue搜索功能查看该项目是否已经有相同或者相关的issue，避免重复提交。  

如果您不确定问题或者改进建议属于哪个项目，向开发者邮件列表<dev@openeuler.org>发邮件将会快速获得帮助。   

#### 参与讨论

openEuler社区提供多种沟通渠道，详细参见[这里](https://gitee.com/openeuler/community/blob/master/en/communication.md)，我们建议您通过如下方式参与讨论或者获取到社区成员的帮助。

如果您的观点、问题、方案等比较明确，想实时获得社区关键项目关键成员反馈或者帮助，建议您使用[IRC](./community/irc.html)。

如果您有一个不错的想法或者方案，但是不确定是否应该属于哪个项目或者不知道怎么获取到帮助，建议您使用[邮件列表](./community/mails.html)发起讨论。

如果您发现某一个项目的一个问题，或者对某一项目有一个明确的方案，建议您向项目提交issue讨论。

#### 贡献代码、文案

openEuler社区采用[gitee](https://gitee.com/openeuler) PR管理代码合入，我们欢迎您通过PR将您的任何贡献提交到社区。如果您是初次参与，请参见[这里](https://gitee.com/openeuler/community/blob/master/CONTRIBUTING.md#submit-pull-requests)了解如何提交PR。

提交PR前，我们建议您先通过issue、IRC或者邮件列表（具体选用哪个，请参见上一节）与相关项目成员沟通，提前与他们达成一致将有助于PR更快合入。

完成代码提交后，请关注项目CI执行情况，确保CI通过将有助于您的贡献快速合入。<br/>

### 建议

初次参与openEuler社区，建议先选择您感兴趣的[SIG](https://gitee.com/openeuler/community/blob/master/zh/Sigs.md)，根据SIG组信息加入相应的IRC频道（[加入方法](./community/irc.html)），订阅相关的邮件列表（[订阅方法](./community/mails.html)），以方便与其他的开发者交流。

初次贡献某一个项目，建议可以从bug-fix开始，每个项目issue列表里将使用```help-wanted```标签标识出一些适合于初次贡献者解决的bug，解决这类bug将有助于您快速熟悉项目结构，了解社区流程。

如果PR是解决关联issue的问题，或者issue间讨论有关联，建议在commit 信息里或者评论里通过```#<issue-id>```的格式进行关联，方便后续参与者了解信息。<br/>

### 参考

[community](https://gitee.com/openeuler/community) 项目将用于管理社区运作、贡献等社区相关流程、工具使用介绍，请关注了解更多详情。

