贡献指南

警告

本文档是针对旧版 SpongeAPI 编写的,目前已不再维护。虽然相应的代码依然能在对应的 API 下工作,但相关政策、方针及链接可能有所变化。请在必要时参阅最新的文档获得相关信息。

我们无时无刻不需要开发者来帮助改进 SpongeAPI。常言道,人无完人,金无足赤;然又有云,锲而不舍,金石可镂。如果你是一名愿意协助我们的开发者,请不要犹豫,我们随时欢迎,惟需注意请遵守我们的指南。

注解

我们会关注一些对我们的项目有贡献的开发者,并由项目管理层在一定的慎重考虑后邀请进入 Sponge 开发团队中来。我们并没有什么正式的申请流程,所以说不要向 Sponge 开发团队询问相关的事了,到时候我们会表态的。

大体步骤

  1. 按照 为开发作准备 中的描述建立你的工作区。

  2. 请确保你熟悉 Git 和 GitHub。如果你需要更新你的知识,看看这里: 如何使用 Git/GitHub

  3. 请先检查在 SpongeAPISpongeCommonSpongeForgeSpongeVanilla 、和 SpongeDocs 中已有的 Issue 及 Pull Request。说不定已经有人在进行相同的工作了。你也可以检查一下被标记为 “Help Wanted” 的 Issue ,这些 Issue 仍需要你的帮助。

注解

请不要提交为小于 20 行的 Pull Request;若有必要,请考虑前往我们在 irc.esper.net 的 IRC 频道( #sponge#spongedev 均可)提出,我们会将其与其他小变更合为一笔大变更。

  1. 如果你想提交一个更大的改变,在实际提交前请先提交 Issue 。这样我们就能确认这个问题并知道是你正在修正它。你应当尽早创建一个以 [WIP] 打头的 WIP(Work In Progress,工作进行中)的 Pull Request,这样我们就能时时刻刻对其检查了。

  2. Fork 这个项目,克隆它并将你的变动放置在一个额外的分支。

  3. 测试你的改动(至少能编译),并将其提交到你自己的 Fork 上。

  4. 提交一个 Pull Request 并附带一段介绍,解释你改动了什么和为什么要那么改动。

  5. 如果你做了额外的改动,请产生一个新的提交。 不要把所有的改动挤(Squash)在一起 ,那会使跟踪你在不同时期所做的改动变得异常困难。

  6. 确信你的 PR(Pull Request)已经衍合(Rebase)到当前你想要合并的分支的最新提交处。如果你不知道如何衍合,请直接问!

小技巧

如果你不确定你应该在哪个分支的基础上开始工作, 在提交你的 PR 之前读读我们的 版本系统和项目仓库分支结构