# 贡献指南

欢迎!我们很高兴您能来到这里,并非常期待您能有兴趣参与 FortuneSheet 贡献。当然,在您参与 FortuneSheet 贡献之前,请确保通读以下全文:

# 我们的行为准则

  1. 我们保证尊重所有参与贡献的人,不限于提出问题、文档和代码贡献、解决bug以及其它贡献的人;
  2. 我们有义务遵守当地法律法规,所有的附带法律风险的行为我们都是拒绝的;
  3. 我们反对任何参与者存在贬损评论、人身攻击、骚扰或侮辱他人以及其他非专业行为;
  4. 我们有权并有责任删除或编辑与此行为准则不符的内容,不限于代码、Issues、wiki、文档以及其它。不遵守行为准则的参与者可能会被移除团队;
  5. 我们接受任何人的监督,任何人可通过问题反馈,向我们报告发现的与此行为准则不符的事实存在。

# 如何提交 Issues

在您提交特性/改进前,应该注意以下几点:

  • 请先确认该特性/改进是否被其他人已经提交
  • 一个通俗易懂的标题来阐述你提交的Bug/提交特性/改进
  • 如果是Bug则详细描述该bug产生的原因,如果能够复现,请尽量提供完整的重现步骤
  • 如果是特性,那么该特性应该有广泛的适用性,适用于大部分用户,最好能够提供详尽的设计文档
  • 如果是改进,尽可能描述清楚此改进所带来的益处

具体步骤:

  • 创建 Issues (opens new window) ,描述清楚问题
  • 如果你要解决该issue则将issue assign到自己名下,如果你仅仅是提交Bug/特性/改进,并没有时间去贡献代码,则assignne设置为空

# 如何认领 Issues

在 FortuneSheet 的 Issues (opens new window) 列表中,有很多由其他人创建的issue并未被修复,如果你感兴趣的话,可以认领这些issue。认领步骤如下:

  • 在该issue下留言,表达想认领该任务的想法,另注明 @I can solve it 即可
  • 如果提交者没有意见,则将该issue assign到自己名下并及时更新进度
  • 开发代码并提交代码至github

# 代码规范

项目配置有eslintprettier,若它们在您提交代码时报了错,请确保您修复后再次提交。

# 如何贡献文档

# 如何成为FortuneSheet Committer

任何人只要对 FortuneSheet 项目做了贡献,那您就是官方承认的 FortuneSheet 项目的Contributor了,从Contributor成长为Committer并没有一个确切的标准, 也没有任何预期的时间表,但是Committer的候选人一般都是长期活跃的贡献者,成为Committer并没有要求必须有巨大的架构改进贡献, 或者多少行的代码贡献,贡献代码、贡献文档、参与邮件列表的讨论、帮助回答问题等等都提升自己影响力的方式。

潜在贡献清单(无特定顺序):

  • 提交自己发现的Bug、特性、改进到issue
  • 更新官方文档使项目的文档是最近的、撰写 FortuneSheet 的最佳实践、特性剖析的各种对用户有用的文档
  • 执行测试并报告测试结果,性能测试与其他MQ的性能对比测试等
  • 审查(Review)其他人的工作(包括代码和非代码)并发表你自己的建议
  • 指导新加入的贡献者,熟悉社区流程
  • 发表关于 FortuneSheet 的博客
  • 有利于 FortuneSheet 社区发展的任何贡献
  • ......