贡献指南
警告
本文档是针对旧版 SpongeAPI 编写的,目前已不再维护。虽然相应的代码依然能在对应的 API 下工作,但相关政策、方针及链接可能有所变化。请在必要时参阅最新的文档获得相关信息。
我们无时无刻不需要开发者来帮助改进 SpongeAPI。常言道,人无完人,金无足赤;然又有云,锲而不舍,金石可镂。如果你是一名愿意协助我们的开发者,请不要犹豫,我们随时欢迎,惟需注意请遵守我们的指南。
注解
我们会关注一些对我们的项目有贡献的开发者,并由项目管理层在一定的慎重考虑后邀请进入 Sponge 开发团队中来。我们并没有什么正式的申请流程,所以说不要向 Sponge 开发团队询问相关的事了,到时候我们会表态的。
大体步骤
按照 为开发作准备 中的描述建立你的工作区。
请确保你熟悉 Git 和 GitHub。如果你需要更新你的知识,看看这里: 如何使用 Git/GitHub
请先检查在 SpongeAPI 、 SpongeCommon 、 SpongeForge 、 SpongeVanilla 、和 SpongeDocs 中已有的 Issue 及 Pull Request。说不定已经有人在进行相同的工作了。你也可以检查一下被标记为 “Help Wanted” 的 Issue ,这些 Issue 仍需要你的帮助。
注解
请不要提交为小于 20 行的 Pull Request;若有必要,请考虑前往我们在 irc.esper.net 的 IRC 频道( #sponge 或 #spongedev 均可)提出,我们会将其与其他小变更合为一笔大变更。
如果你想提交一个更大的改变,在实际提交前请先提交 Issue 。这样我们就能确认这个问题并知道是你正在修正它。你应当尽早创建一个以
[WIP]
打头的 WIP(Work In Progress,工作进行中)的 Pull Request,这样我们就能时时刻刻对其检查了。Fork 这个项目,克隆它并将你的变动放置在一个额外的分支。
测试你的改动(至少能编译),并将其提交到你自己的 Fork 上。
提交一个 Pull Request 并附带一段介绍,解释你改动了什么和为什么要那么改动。
如果你做了额外的改动,请产生一个新的提交。 不要把所有的改动挤(Squash)在一起 ,那会使跟踪你在不同时期所做的改动变得异常困难。
确信你的 PR(Pull Request)已经衍合(Rebase)到当前你想要合并的分支的最新提交处。如果你不知道如何衍合,请直接问!
小技巧
如果你不确定你应该在哪个分支的基础上开始工作, 在提交你的 PR 之前读读我们的 版本系统和项目仓库分支结构 。