参与极狐GitLab 开发
感谢您对参与极狐GitLab 的兴趣。 您可以贡献新功能、修改代码或流程、修正拼写错误,或更新界面中的语言文本。
本指南详细说明了如何参与极狐GitLab 的开发。
有关面向首次贡献者的分步指南,请参阅教程:进行极狐GitLab 贡献。
如何参与贡献
- 阅读行为准则。
- 开始您的贡献者入门。
- 选择或创建一个议题。
- 选择开发环境。
- 进行更改并打开合并请求
- 您的合并请求经过分诊、审核,然后可以并入产品。
极狐GitLab 技术
极狐GitLab 是一个 Ruby on Rails 应用。 它使用 Haml 和基于 JavaScript 的前端,搭配 Vue.js。
一些卫星项目使用 Go。 例如:
我们为每种技术提供了开发风格指南,以帮助您符合我们的编码标准。
如果您想为网站或手册做出贡献,请转到任何页面的页脚,并选择 查看页面源代码 在代码仓库中打开该页面。
选择或创建一个议题
如果您不确定要做什么,可以使用贡献者平台上的议题查找器来找到并分配给自己。 建议从带有 quick win::first-time contributor 标签的议题开始。
如果您知道自己要做什么,请查看是否已存在议题。 如果没有,请打开一个新议题。 选择合适的模板并添加您计划做的所有必要信息。 通过 @gitlab-bot help 在该议题中或在贡献者平台中标记一位合并请求教练,来帮助验证议题。 无需被分配到议题即可开始工作。 如果议题已有指派人,询问他们是否仍在处理该议题,或者是否愿意合作。
有关详细信息,请参阅议题工作流程。
加入社区
开始您的贡献者入门 以获得对社区 forks 的访问权限, 这是一组从极狐GitLab 代码仓库镜像出来的 forks,以改善贡献者体验。 当您开始入门时,您将在社区入门项目中收到一个入门议题。 有关更多信息,请阅读 Meta 仓库 README 中关于社区 forks 的内容。
另外,我们建议您加入 GitLab Discord 服务器, 在那里,极狐GitLab 团队成员和更广泛的社区随时准备回答您的问题并为贡献提供支持。
选择开发环境
要在本地编写和测试代码,请选择一个本地开发环境。
-
极狐GitLab Development Kit (GDK),是一个本地开发环境,包含私有化部署的极狐GitLab 安装、示例项目和管理员访问权限,您可以使用它来测试功能。
-
GDK-in-a-box 将 GDK 打包成一个预配置的容器镜像,您可以使用本地开发工具进行连接。 按照配置 GDK-in-a-box 来设置 GDK-in-a-box。
要安装 GDK 及其依赖项,请按照安装 GDK 开发环境中的步骤操作。
进行更改并打开合并请求
- 在社区 fork 的一个分支上做出代码更改。
- 创建一个合并请求,目标指向权威仓库的 master 分支。
- 按照 @gitlab-bot 发布的链接添加标签或请求极狐GitLab 团队审核。
有关打开和提交合并请求的完整分步说明,请参阅合并请求教程。
有问题? 使用 @gitlab-bot help 来 ping 一位极狐GitLab 合并请求教练。有关 MR 教练的更多信息,请访问极狐GitLab 合并请求教练如何帮助您。
如何对社区合并请求进行分类
当您创建合并请求时,合并请求教练将指派相关的审核者,或者如果可能,亲自指导您完成审核。
目标是在审核者被指派后一周内完成合并请求的审核。 有时由于工作量大、假日或其他原因,这可能需要更长时间。 如果需要,您可以找一位专注于您所写代码类型的合并请求教练,并在合并请求中提及他们。 例如,如果您编写了一些前端代码,您应该提及前端合并请求教练。 如果您的代码涉及多个学科,您可以提及多位合并请求教练。
有关时间线以及如何请求帮助或升级合并请求的详细信息,请参阅更广泛的社区合并请求指南。
在您的合并请求被审核并合并后,您的更改将被部署到 JihuLab.com 并包含在下一个版本中!
审核流程
当您向极狐GitLab 提交代码时,我们真的希望它能被合并! 但是,我们会仔细审核提交内容,这需要时间。 代码提交在被合并之前通常会由两位领域专家审核:
审核后,审核者可能会要求作者更新合并请求。 在这种情况下,审核者将设置 ~"workflow::in dev" 标签。 一旦您根据要求的更改更新了合并请求,就在上面评论 @gitlab-bot ready 以表示它已准备好再次审核。 这个过程在合并前可能会重复多次。
请在您第一次开始之前阅读我们的贡献者合并请求指南。
- 确保遵循我们的提交消息指南。
- 编写一份出色的描述,包括重现您的实现的步骤。
- 自动化测试是必需的。花时间了解不同的测试级别并相应应用。
使用企业版许可证贡献专业版/旗舰版功能
如果您想开发收费层的极狐GitLab 功能,这些代码位于EE 目录中,需要极狐GitLab 企业版许可证。 请按照文档流程申请企业版开发者许可证。
获取帮助
如何找到帮助来为极狐GitLab 做贡献:
- 在合并请求或议题的评论中输入 @gitlab-bot help 来标记一位 MR 教练。
- 有关更多信息,请参阅极狐GitLab 合并请求教练如何帮助您。
- 加入 GitLab 社区 Discord 并在 #contribute 频道中寻求帮助。
- 发送邮件至贡献者成功团队:contributors@gitlab.com。