给新贡献者的建议¶
你是新贡献者,不知道该做什么?想帮忙,但不知道如何开始?这里就是为你准备的。
开始运行!
如果您是 Django 的新贡献者,为 Django 编写您的第一个贡献 教程将向您介绍工具和工作流程。
此页面包含更多关于您可以为 Django 做出贡献的方式以及如何进行的通用建议。
如果您正在查找有关进行代码贡献细节的参考,请参阅贡献代码文档。
第一步¶
请按照以下步骤了解 Django 的开发流程。
分类问题¶
如果一个未审核的问题报告了一个错误,请尝试重现它。如果您能重现它并且它看起来有效,请记下您已确认该错误并接受该问题。确保该问题已归档在正确的组件区域下。考虑编写一个补丁,为错误的行为添加一个测试,即使您没有修复错误本身。请参阅我如何帮助分类?了解更多信息。
审核已接受问题的补丁¶
这将帮助您熟悉代码库和流程。如果补丁需要文档或测试,请标记相应的标志。查看补丁所做的更改,并注意与旧版但仍受支持的 Python 版本不兼容的语法。运行测试并确保它们通过。在可能且相关的情况下,尝试在 SQLite 以外的数据库上进行测试。留下评论和反馈!
保持旧补丁最新¶
通常情况下,代码库会在补丁提交和审查之间发生更改。确保它仍然可以干净地应用并按预期工作。更新补丁既有用又重要!请参阅提交贡献了解更多信息。
编写一些文档¶
Django 的文档很棒,但它总能改进。您发现错别字了吗?您认为应该澄清某些内容吗?继续并建议一个文档补丁!另请参阅有关编写文档的指南。
注意
报告页面包含许多有用的 Trac 查询的链接,包括一些对如上所述对问题进行分类和审查补丁有用的查询。
签署贡献者许可协议¶
您编写的代码属于您或您的雇主。如果您的贡献超过一两行代码,您需要签署CLA。请参阅贡献者许可协议常见问题解答以获得更详尽的解释。
指南¶
作为大型项目的新手,很容易感到沮丧。以下是一些建议,让您在 Django 上的工作更有用、更有收获。
选择一个主题领域¶
这应该是您关心的事情,您熟悉的事情,或者您想了解的事情。您不必成为您想要从事的领域的专家;您会通过不断地为代码做出贡献而成为专家。
分析问题的上下文和历史¶
Trac 不是绝对的;上下文与文字一样重要。阅读 Trac 时,您需要考虑谁说了什么,以及他们是什么时候说的。两年前对某个想法的支持并不一定意味着该想法仍然会得到支持。您还需要注意谁_没有_发言——例如,如果一位经验丰富的贡献者最近没有参与讨论,那么一个问题可能没有获得进入 Django 所需的支持。
从小事做起¶
与大型问题相比,小型问题更容易获得反馈。请参阅轻松上手。
在进行大型任务之前确认支持¶
这意味着在您修复问题之前,请其他人确认错误是真实的,并在您开始实施之前确保对提议的功能达成共识。
大胆!留下反馈!¶
有时,将您的意见公之于众并说“这个票是正确的”或“这个补丁需要改进”可能会让人害怕,但这却是项目前进的唯一途径。广泛的 Django 社区的贡献最终比任何一个人的贡献都有更大的影响。没有**您**,我们无法做到!
标记为“准备签入”时要谨慎¶
如果您真的不确定某个问题是否已准备好,请不要将其标记为已准备好。改为留下评论,让其他人知道您的想法。如果您大部分确定,但并非完全确定,您也可以尝试在 IRC 上询问,看看是否有人可以确认您的猜测。
等待反馈,并回复您收到的反馈¶
专注于一两个问题,从头到尾完成它们,然后重复。采用同时处理大量问题并让一些问题搁置一旁的方法最终弊大于利。
要严格¶
当我们说“PEP 8,并且必须有文档和测试”时,我们是认真的。如果补丁没有文档和测试,最好有一个很好的理由。诸如“我找不到此功能的任何现有测试”之类的论点并没有多大说服力。虽然这可能是真的,但这意味着您有额外重要的工作来编写该功能的第一个测试,而不是说您可以免于编写测试。
耐心点¶
您的问题或补丁并非总是容易快速审查。这不是针对个人的。有很多问题和拉取请求需要处理。
保持补丁最新非常重要。查看 Trac 上的问题,确保在您解决所有审查意见后,已取消选中_需要测试_、_需要文档_和_补丁需要改进_标志。
请记住,Django 有一个八个月的发布周期,因此您的补丁有足够的时间进行审查。
最后,适时的提醒会有所帮助。请参阅贡献代码常见问题解答以了解这里的想法。