首先,感谢你抽出宝贵时间为 KiramiBot 做出贡献!
我们鼓励并重视所有类型的贡献,你可以通过多种不同的方式为 KiramiBot 做出贡献,请参阅我们支持的贡献类型。
在做出贡献之前,请务必阅读相关章节。这将大大方便我们的维护人员,并使所有相关人员都能顺利完成工作。
我们欢迎一切贡献!并对每个愿意贡献的人表示衷心的感谢!💖
如果你喜欢这个项目,可以为本项目点亮⭐️,这是对我们最大的鼓励。
要了解项目概况,请阅读 README。以下是一些帮助你开始第一次开源贡献的资源:
在创建议题之前,请确保你已经搜索了现有的议题,以确保你的议题没有重复。如果你发现议题已经存在,请在现有的议题下添加评论,而不是创建新的议题。
如果你发现了一个问题,但是没有时间解决它,或者你不知道如何解决它,你可以创建一个议题。
如果你想要添加新的功能,你可以创建一个议题,并描述你想要的特性。
浏览我们现有的议题,找到你感兴趣的议题。你可以使用标签作为过滤器缩小搜索范围。有关更多信息,请参见标签。
如果你发现了需要解决的议题,请在议题下添加评论,以便我们知道你正在解决该议题。
在修复 bug 之前,我们建议你检查是否存在描述 bug 的问题,因为这可能是一个文档问题,或者是否存在一些有助于了解的上下文。
如果你正在开发一个特性,那么我们要求你首先打开一个特性请求议题,以便与维护人员讨论是否需要该特性以及这些特性的设计。这有助于为维护人员和贡献者节省时间,并意味着可以更快地提供特性。
有关代码空间的更多信息,请参阅 GitHub Codespaces 概述。
如果你已经安装了 VS Code 和 Docker,可以点击上面的徽标或 这里 开始使用。点击这些链接后,VS Code 将根据需要自动安装 Dev Containers 扩展,将源代码克隆到容器卷中,并启动一个开发容器以供使用。
如果你不想使用代码空间或者开发容器,你可以在本地环境中开发。
KiramiBot 使用 pdm 管理项目依赖。请确保你已经安装了 pdm,然后在项目根目录下运行 pdm install
安装依赖。
一旦对修改满意,就可以将其提交。别忘了进行自我审核和本地测试,以加快审核过程⚡。
请确保你的每一个 commit 都能清晰地描述其意图,一个 commit 尽量只有一个意图。
KiramiBot 的 commit message 格式遵循 gitmoji 规范,在创建 commit 时请牢记这一点。
完成修改后,创建一个拉取请求,也称为 PR。
- 拉取请求标题应尽量使用中文,以便自动生成更新日志。
- 填写拉取请求模板,以便我们审核你的 PR。该模板可帮助审核员了解你的更改以及你的拉取请求的目的。
- 如果你的 PR 修复或解决了现有问题,请将拉取请求链接到议题。
- 在一个 PR 中有多个提交是可以的。你不需要重新变基或强制推送你的更改,因为我们将使用 Squash Merge 在合并时将你的提交压缩成一个提交。
- 最好提交多个涉及少量文件的拉取请求,而不是提交涉及多个文件的大型拉取请求。这样做可以使审核员更容易理解你的更改,并且可以更快地合并你的更改。
- 我们可能会要求在合并 PR 之前进行更改,或者使用建议的更改,或者拉请求注释。你可以通过 UI 直接应用建议的更改,也可以在 fork 中进行任何其他更改,然后将它们提交到分支。
- 当你更新 PR 并应用更改时,将每个对话标记为已解决。
- 如果遇到任何合并问题,请查看解决合并冲突,以帮助你解决合并冲突和其他问题。
KiramiBot 的代码风格遵循 PEP 8 与 PEP 484 规范,请确保你的代码风格和项目已有的代码保持一致,变量命名清晰,代码类型完整,有适当的注释与测试代码。
在为此项目做贡献时,请确保你的贡献内容不会侵犯他人的知识产权,否则你的贡献将被视为无效。
通过贡献你的代码、问题或建议,即表示你同意将你的贡献内容以开源的形式提供,并遵守项目所采用的开源许可证。