新贡献者指南#

本指南是为新贡献者提供如何为 Apache Arrow 做贡献的资源。

无论您目前的技能如何,您都可以尝试为 Arrow 做出第一次贡献。

开始为 Apache Arrow 这样的项目做贡献可能会让人感到畏惧。采取一些小步骤将使这项任务更容易。

为什么为 Arrow 做贡献?#

您可能想要为 Arrow 做贡献的原因有很多

  • 您觉得这个项目很有趣,并想尝试做出贡献,以了解更多关于该库的知识并提升您的技能。

  • 您在正在进行的项目中使用了 Arrow,并且您想要实现一个新功能或修复您遇到的错误。

架构概述部分阅读更多关于该项目的信息。

注意

Apache Arrow 的贡献者遵循 ASF 的行为准则

快速参考#

以下是设置和为 Arrow 做贡献所需的基本步骤。这既是一个清单,也提供了流程的总体概况。

要获得完整的说明,请按照提交你的第一个 PR 的步骤(分步指南)或 R 和 Python 教程,了解添加基本功能的示例。

  1. 安装并设置 Git,并 fork Arrow 仓库

    请参阅关于如何设置 Git 并 fork Arrow 仓库的详细说明。

  2. 构建 Arrow

    Arrow 库包含广泛的功能,可能需要安装第三方软件包,具体取决于您启用的构建选项和组件。 C++ 构建指南针对常见问题提供了一些建议 - 您可以在此处找到它。 如果您遇到任何问题,请随时通过适当的沟通渠道与我们联系。

    请参阅关于PyArrow 或 R 包构建过程的简短描述,或直接跳至文档中关于如何构建 Arrow 库的详细说明。

  3. 运行测试

    我们应该运行测试以检查一切是否正常工作。例如,您可以从 Python 的终端运行测试

    $ pytest pyarrow
    

    或者在 R 控制台中为 R 运行测试

    devtools::test()
    

    另请参阅关于测试 🧪的部分。

  4. 找到一个问题(如果需要),创建一个新分支并处理该问题

    查找问题

    您可能已经想到了要修复的错误,或者想要实现的新功能。但是,如果您没有并且需要处理一个问题,那么您可能需要帮助来找到它。请阅读寻找合适的入门问题 🔎部分以获取一些想法。

    熟悉项目

    启动新项目的第一步是最困难的,因此我们编写了一些指南来帮助您完成此过程。

    您可以先阅读在 Arrow 代码库上工作 🧐部分。

    沟通

    沟通非常重要。您可能需要一些帮助来解决您在途中遇到的问题(这种情况经常发生在开发人员身上)。此外,如果您有一个想要解决的 GitHub 问题,那么建议您让团队知道您正在处理它,并且可能需要一些帮助。

    请参阅可能的沟通渠道。

  5. 一旦您实现了计划的修复或功能,请为其编写并运行测试

    请参阅关于如何测试的详细说明。 在继续下一步之前,还要运行 linter 以确保代码风格正确!

  6. 将分支推送到您的 fork 上并创建一个拉取请求

    请参阅关于创建拉取请求的详细说明

如果您准备好了,可以开始构建 Arrow 或选择学习关于编写 R 绑定或 Python 功能的教程之一。

不同的贡献方式#

除了编写代码之外,还有很多方法可以为项目做出贡献!

  • 改进**文档**是开始贡献的好方法!有关更多信息,请访问指南的文档贡献部分。

  • **Apache Arrow 秘籍**是使用 Apache Arrow 解决各种问题和完成不同任务的菜谱集合。它们也是开始贡献的好方法。有关更多信息,请访问 Apache Arrow Cookbook 仓库中的如何为 Apache Arrow Cookbook 做贡献

也欢迎您查看其他信息和资源部分。

我们鼓励每个人都为 Arrow 做贡献!

完整目录#