贡献概述
感谢您对为 React Native 做出贡献感兴趣!从评论和分诊 Issue,到审查和发送 Pull Request,我们欢迎所有贡献。我们的目标是建立一个充满活力和包容性的合作伙伴、核心贡献者和社区生态系统,它超越了主要的 React Native GitHub 仓库。
开源指南网站收集了为希望学习如何运行开源项目和为其做出贡献的个人、社区和公司提供的资源。
贡献者和开源新手都会发现以下指南特别有用
行为准则
提醒一下,所有贡献者都应遵守行为准则。
贡献方式
如果您渴望立即开始贡献代码,我们有一个适合新手的问题列表,其中包含范围相对有限的错误。随着您获得更多经验并展示对发展 React Native 的承诺,您可能会被授予仓库中的 Issue 管理权限。
还有其他无需编写一行代码即可做出贡献的方式。以下是一些您可以帮助的事情
-
回复和处理未解决的 Issue。
我们每天都会收到大量 Issue,其中一些可能缺少必要的信息。您可以通过指导人们填写 Issue 模板、询问澄清信息或将他们指向与问题描述匹配的现有 Issue 来提供帮助。我们在Issue 分诊页面上介绍了有关此过程的更多信息。
-
审查文档的 pull request。
审查文档更新可以像检查拼写和语法一样简单。如果您遇到可以在文档中更好地解释的情况,请单击大多数文档页面顶部的 编辑 以开始您自己的贡献。
-
帮助人们编写测试计划。
发送到主仓库的一些 pull request 可能缺少适当的测试计划。这些计划可以帮助审阅者了解更改是如何测试的,并可以加快贡献被接受的时间。
这些任务中的每一项都具有高度影响力,维护者将非常感谢您的帮助。
我们的开发流程
我们使用 GitHub issue 和 pull request 来跟踪来自社区的错误报告和贡献。Meta 工程师的所有更改都将通过与 Meta 内部源代码控制的桥梁同步到 GitHub。来自社区的更改通过 GitHub pull request 处理。
一旦 GitHub 上的更改获得批准,它将首先导入到 Facebook 的内部源代码控制中,并针对 Facebook 的代码库进行测试。一旦在 Facebook 合并,更改最终将作为单个提交同步回 GitHub,因为它已通过 Facebook 的内部测试。
您可以在以下文档中了解有关贡献过程的更多信息
我们还有一个蓬勃发展的贡献者社区,他们很乐意帮助您进行设置。您可以通过 @ReactNative 联系 React Native 团队。
仓库
主仓库包含 React Native 框架本身,我们在此处跟踪错误报告并管理 pull request。
您可能想熟悉的其他一些仓库
- React Native 网站,其中包含网站的源代码,包括文档,位于此仓库中。
- Releases 对话正在此讨论仓库中进行。
- 版本的变更日志可以在这里找到。
- 关于 React Native 的讨论发生在讨论和提案仓库中。
- 关于 React Native 新架构的讨论发生在React Native 新架构工作组仓库中。
- 高质量的 React Native 插件可以在 React Native Directory 网站上找到。
浏览这些仓库应该可以深入了解 React Native 开源项目是如何管理的。
GitHub Issues
我们专门使用 GitHub issue 来跟踪错误。我们在Issue 分诊页面中记录了我们的 Issue 处理流程。
安全漏洞
Meta 有一个漏洞赏金计划,用于安全披露安全漏洞。在这些情况下,请按照该页面上概述的流程进行操作,不要提交公开 Issue。
帮助完善文档
React Native 文档作为 React Native 网站仓库的一部分托管。该网站是使用 Docusaurus 构建的。如果您想更改文档中的任何内容,可以单击网站中大多数页面右上角的“编辑”按钮开始。
如果您要添加新功能或引入行为更改,我们将要求您更新文档以反映您的更改。
为博客做贡献
React Native 博客是从博客的 Markdown 来源生成的。
请在 React Native 网站仓库中打开一个 issue 或在 Twitter 上的 @ReactNative 上标记我们,并在撰写计划用于 React Native 博客的文章之前获得维护者的批准。在大多数情况下,您可能希望在您自己的博客或写作平台分享您的文章。不过,值得询问一下,以防我们发现您的文章非常适合该博客。
我们建议参考 react-native-website
仓库 Readme 文件,以了解有关为网站做贡献的更多信息。
贡献代码
对 React Native 的代码级贡献通常以 pull request 的形式出现。这些是通过 fork 仓库并在本地进行更改来完成的。
分步指南
当您准备好贡献代码时,请查看我们的提交您的第一个 pull request 的分步指南,或阅读如何贡献代码页面以了解更多详情。
测试
测试帮助我们防止将回归引入代码库。GitHub 仓库使用 CircleCI 进行持续测试,其结果可通过 commits 和 pull request 上的 Checks 功能获得。
您可以在如何运行和编写测试页面上了解有关运行和编写测试的更多信息。
社区贡献
对 React Native 的贡献不仅限于 GitHub。您可以通过分享您使用 React Native 的经验来帮助他人,无论是通过博客文章、在会议上发表演讲,还是仅仅在 Twitter 上分享您的想法并标记 @ReactNative。