贡献指南
Goravel 欢迎不同人才提供丰富多样的贡献,例如编码、翻译、文章、教程等。 完成两个 Feature
(5 个 Good First Issue
== 1 个 Feature
)后,你将成为核心开发者。 之后每三个月至少完成一个 Feature
,可以保持这个头衔。
让我们一起将 Goravel 变得更高效!
奖励
- 核心开发者将可以在未来从 Goravel 中获得收益;
- 完成一个
Feature
,即可获得 Goravel 官方 T-Shirt 一件,一个大版本发布周期中最多可获得 1 件;
核心开发者
贡献者
Bug 报告
你可以在这里提交一个 Bug 报告,在提交前请搜索 Issue 列表 中是否已存在类似问题。 该报告应该包含一个标题和对问题的清晰描述,还应该包含尽可能多的相关信息以及演示该问题的代码示例。 错误报告的目标是使你自己(以及其他人)能够轻松地复现错误并开发修复程序。 Goravel 鼓励提交者同时创建 PR 进行 Bug 修复,使开源项目得到更积极的发展。
帮助支持
Goravel 的 GitHub issue 不提供 Goravel 的帮助或支持。 你可以通过以下途径进行讨论:
开发讨论
你可以在 Goravel 仓库的 GitHub 讨论区 中提出新功能或对现有 Goravel 行为的改进。 也可以在 Discord 或微信群中进行有关错误、新功能和现有功能实现的非正式讨论。 Goravel 的维护者 Bowen 通常在工作日的上午 9 点至下午 6 点(UTC+08:00)出现在频道中,并在其他时间偶尔出现在频道中。
新增语言
欢迎为Goravel文档添加新的语言, 你可以提交一个标题为 "Add [Language] Language" 的 Issue 并附带你的 Crowdin 账号到 goravel/goravel。 我们将邀请你加入 Crowdin 项目。
修改现有语言
Goravel 文档支持多语言后,只有英文文件可以被 PR 修改; 其他语言应该通过 Crowdin修改。 你可以提交一个标题为 "修改 [Language] 语言" 的 Issue 并附带你的 Crowdin 账户到 goravel/goravel。 我们将邀请你加入 Crowdin 项目。
提交贡献
寻找/创建 Issue
你可以在 Issue 列表 中寻找或创建一个 Issue,留言表达想要处理该 Issue 的意愿,得到仓库维护者的确认后,即可开始处理。
创建 PR
- 如果你对该流程不太了解,可以查看这篇文章;
- 在开发过程中,如果遇到问题可以随时在 Issue 中详尽描述该问题,以进一步沟通,但在此之前请确保自己已通过 Google 等方式尽可能的尝试解决问题;
- 在创建 PR 前,请尽可能的提高单元测试覆盖率,以提供更稳定的功能;
- 如果修改了
contracts
文件夹下的任意文件,请在根目录运行go run github.com/vektra/mockery/v2
命令生成 mock 文件; - 当 PR 开发完毕后,请为其添加
Review Ready
标签,维护者将及时进行评审; - PR 合并后,如果描述设置正确,Issue 将被自动关闭;
- Goravel 非常感谢你的贡献,将在下次发版时将你添加到首页贡献列表中;❤️
哪个分支?
所有错误修复应发送到最新的稳定分支,除非它们修复了仅存在于 master
分支中的功能。
新功能或有破坏性变化的功能应始终合并到 master
分支。
Goravel 仓库
仓库 | 作用 |
---|---|
goravel/goravel | Goravel 命令行 |
goravel/framework | Goravel 主仓库 |
goravel/example | Goravel 示例 |
goravel/example-client | Grpc 客户端示例 |
goravel/example-proto | example 仓库 proto 依赖 |
goravel/example-package | 扩展包示例 |
goravel/docs | 使用文档 |
goravel/docs-web | Goravel 官网 |
goravel/s3 | Storage 模块 S3 驱动 |
goravel/oss | Storage 模块 OSS 驱动 |
goravel/cos | Storage 模块 COS 驱动 |
goravel/minio | Storage 模块 Minio 驱动 |
goravel/cloudinary | Storage 模块 Cloudinary 驱动 |
goravel/redis | Cache 模块 Redis 驱动 |
goravel/gin | Route 模块 Gin 驱动 |
goravel/fiber | Route 模块 Fiber 驱动 |
goravel/postgres | Database 模块 Postgres 驱动 |
goravel/mysql | Database 模块 MySQL 驱动 |
goravel/sqlserver | Database 模块 SQLServer 驱动 |
goravel/sqlite | Database 模块 SQLite 驱动 |
goravel/file-rotatelogs | 为 Log 模块提供日志分割功能 |
goravel/.github | 社区健康文件 |
行为准则
Goravel 行为准则源自 Laravel 行为准则。 任何违反行为准则的行为都可以报告给 Bowen。
- 参与者将容忍反对意见。
- 参与者必须确保他们的语言和行为没有人身攻击和贬低个人言论。
- 在解释他人的言行时,参与者应始终保持良好的意图。
- 不能容忍可合理视为骚扰的行为。