给新贡献者的建议

你是新贡献者,不知道该做什么?想帮忙,但不知道如何开始?这里就是为你准备的。

开始运行!

如果您是 Django 的新贡献者,为 Django 编写您的第一个贡献 教程将向您介绍工具和工作流程。

此页面包含更多关于您可以为 Django 做出贡献的方式以及如何进行的通用建议。

如果您正在查找有关进行代码贡献细节的参考,请参阅贡献代码文档。

第一步

请按照以下步骤了解 Django 的开发流程。

分类问题

如果一个未审核的问题报告了一个错误,请尝试重现它。如果您能重现它并且它看起来有效,请记下您已确认该错误并接受该问题。确保该问题已归档在正确的组件区域下。考虑编写一个补丁,为错误的行为添加一个测试,即使您没有修复错误本身。请参阅我如何帮助分类?了解更多信息。

审核已接受问题的补丁

这将帮助您熟悉代码库和流程。如果补丁需要文档或测试,请标记相应的标志。查看补丁所做的更改,并注意与旧版但仍受支持的 Python 版本不兼容的语法。运行测试并确保它们通过。在可能且相关的情况下,尝试在 SQLite 以外的数据库上进行测试。留下评论和反馈!

保持旧补丁最新

通常情况下,代码库会在补丁提交和审查之间发生更改。确保它仍然可以干净地应用并按预期工作。更新补丁既有用又重要!请参阅提交贡献了解更多信息。

编写一些文档

Django 的文档很棒,但它总能改进。您发现错别字了吗?您认为应该澄清某些内容吗?继续并建议一个文档补丁!另请参阅有关编写文档的指南。

注意

报告页面包含许多有用的 Trac 查询的链接,包括一些对如上所述对问题进行分类和审查补丁有用的查询。

签署贡献者许可协议

您编写的代码属于您或您的雇主。如果您的贡献超过一两行代码,您需要签署CLA。请参阅贡献者许可协议常见问题解答以获得更详尽的解释。

指南

作为大型项目的新手,很容易感到沮丧。以下是一些建议,让您在 Django 上的工作更有用、更有收获。

选择一个主题领域

这应该是您关心的事情,您熟悉的事情,或者您想了解的事情。您不必成为您想要从事的领域的专家;您会通过不断地为代码做出贡献而成为专家。

分析问题的上下文和历史

Trac 不是绝对的;上下文与文字一样重要。阅读 Trac 时,您需要考虑谁说了什么,以及他们是什么时候说的。两年前对某个想法的支持并不一定意味着该想法仍然会得到支持。您还需要注意谁_没有_发言——例如,如果一位经验丰富的贡献者最近没有参与讨论,那么一个问题可能没有获得进入 Django 所需的支持。

从小事做起

与大型问题相比,小型问题更容易获得反馈。请参阅轻松上手

在进行大型任务之前确认支持

这意味着在您修复问题之前,请其他人确认错误是真实的,并在您开始实施之前确保对提议的功能达成共识。

大胆!留下反馈!

有时,将您的意见公之于众并说“这个票是正确的”或“这个补丁需要改进”可能会让人害怕,但这却是项目前进的唯一途径。广泛的 Django 社区的贡献最终比任何一个人的贡献都有更大的影响。没有**您**,我们无法做到!

标记为“准备签入”时要谨慎

如果您真的不确定某个问题是否已准备好,请不要将其标记为已准备好。改为留下评论,让其他人知道您的想法。如果您大部分确定,但并非完全确定,您也可以尝试在 IRC 上询问,看看是否有人可以确认您的猜测。

等待反馈,并回复您收到的反馈

专注于一两个问题,从头到尾完成它们,然后重复。采用同时处理大量问题并让一些问题搁置一旁的方法最终弊大于利。

要严格

当我们说“PEP 8,并且必须有文档和测试”时,我们是认真的。如果补丁没有文档和测试,最好有一个很好的理由。诸如“我找不到此功能的任何现有测试”之类的论点并没有多大说服力。虽然这可能是真的,但这意味着您有额外重要的工作来编写该功能的第一个测试,而不是说您可以免于编写测试。

耐心点

您的问题或补丁并非总是容易快速审查。这不是针对个人的。有很多问题和拉取请求需要处理。

保持补丁最新非常重要。查看 Trac 上的问题,确保在您解决所有审查意见后,已取消选中_需要测试_、_需要文档_和_补丁需要改进_标志。

请记住,Django 有一个八个月的发布周期,因此您的补丁有足够的时间进行审查。

最后,适时的提醒会有所帮助。请参阅贡献代码常见问题解答以了解这里的想法。

返回顶部