“Django/docs/3.0.x/faq/contributing”的版本间差异

来自菜鸟教程
Django/docs/3.0.x/faq/contributing
跳转至:导航、​搜索
(autoload)
 
(Page commit)
 
第1行: 第1行:
 +
{{DISPLAYTITLE:常见问题:贡献代码 — Django 文档}}
 
<div id="faq-contributing-code" class="section">
 
<div id="faq-contributing-code" class="section">
  
= FAQ:贡献代码 =
+
= 常见问题:贡献代码 =
  
 
<div id="how-can-i-get-started-contributing-code-to-django" class="section">
 
<div id="how-can-i-get-started-contributing-code-to-django" class="section">
  
== 如何为 Django 贡献代码? ==
+
== 如何开始向 Django 贡献代码? ==
  
感谢反馈!我们已经为这个问题编写了一个详细的文档。参见:doc:Contributing to Django 1.
+
谢谢提问! 我们已经写了一个完整的文档专门讨论这个问题。 它的标题是 [[../../internals/contributing/index|Contributing to Django]]。
  
  
第13行: 第14行:
 
<div id="i-submitted-a-bug-fix-in-the-ticket-system-several-weeks-ago-why-are-you-ignoring-my-patch" class="section">
 
<div id="i-submitted-a-bug-fix-in-the-ticket-system-several-weeks-ago-why-are-you-ignoring-my-patch" class="section">
  
== 我几周之前提交了一个工单系统 bug 的修复。为什么忽略我的提议? ==
+
== 几周前我在票务系统中提交了一个错误修复。 你为什么忽略我的补丁? ==
  
别担心:我们不会忽略你!
+
别担心:我们不会忽视你!
  
重要的是要明白,“工单被忽略”和“工单还没有被查看”是有区别的。 Django 的工单系统包含数百个打开的工单,对最终用户功能有不同程度的影响,Django 的开发人员必须检查并确定优先级。
+
重要的是要了解“票被忽略”和“票尚未处理”之间的区别。 Django 的工单系统包含数百个未解决的工单,对最终用户功能有不同程度的影响,Django 的开发人员必须审查并确定优先级。
  
另外:所有的 Django 工作都是由志愿者完成的。因此,我们花在这个框架上的总时间是有限的,它取决于我们的空闲时间,并且每周都会有所不同。如果我们很忙,我们可能无法在 Django 上花费太多的时间,尽管我们不愿如此。
+
最重要的是:在 Django 上工作的人都是志愿者。 因此,我们在框架上工作的时间是有限的,并且会根据我们的空闲时间每周有所不同。 如果我们很忙,我们可能无法在 Django 上花费我们想要的那么多时间。
  
确保工单在签入过程中不被挂起的最佳方法是让它所描述的问题通俗易懂,即便是对相关领域并不熟悉的人也能理解并修复问题:
+
确保票在签到过程中不会被挂断的最好方法是让它变得非常容易,即使对于可能不熟悉该代码区域的人来说,也可以理解问题并验证修复:
  
* 是否有明确的用以重现 bug 的说明? 是否触及依赖项(如Pillow),contrib 模块或特定数据库?这些说明对于不熟悉它的人是否也足够明确?
+
* 是否有关于如何重现错误的明确说明? 如果这涉及依赖项(例如 Pillow)、contrib 模块或特定数据库,即使对于不熟悉它的人来说,这些说明也足够清楚吗?
* 如果工单附有多个补充,是否能够明确每个补充是做什么的、哪些补充可以忽略,哪些补充很重要?
+
* 如果故障单上附有多个补丁,是否清楚每个补丁的作用、哪些可以忽略以及哪些重要?
* 补丁是否包括单元测试?如果没有,那么是否可以解释清楚原因?测试可以简洁地表达了问题所在,并显示补丁真的修复了问题。
+
* 补丁是否包含单元测试? 如果没有,是否有一个非常明确的解释为什么不呢? 测试简洁地表达了问题是什么,并表明补丁实际上修复了它。
  
如果你的补丁没有被加入到 Django,并不意味我们忽视它了——我们只是关闭这个工单。所以如果你的工单一直处于开启状态,也并不意味着我们忽视了你;这只是意味着我们还没来得及看它。
+
如果您的补丁没有机会包含在 Django 中,我们不会忽略它——我们只会关闭票证。 因此,如果您的票仍然打开,这并不意味着我们不理会您; 这只是意味着我们还没有时间看它。
  
  
第33行: 第34行:
 
<div id="when-and-how-might-i-remind-the-team-of-a-patch-i-care-about" class="section">
 
<div id="when-and-how-might-i-remind-the-team-of-a-patch-i-care-about" class="section">
  
== 何时以及如何提醒团队我所关注的补丁? ==
+
== 我何时以及如何提醒团队我关心的补丁? ==
  
一种获得关注的方式是向邮件列表发送一个礼貌的,适时的消息。为了确保时间合适,你需要留意时间表。如果你在发布截止日期之前发送消息,则不太可能获得您需要的关注。
+
向邮件列表发送礼貌、适时的消息是引起注意的一种方式。 要确定合适的时间,您需要密切关注时间表。 如果您在发布截止日期之前发布消息,则不太可能获得所需的关注。
  
温和的 IRC 提醒也可以发挥作用——还是如此:如果可能的话,选取一个合适的时间。 例如,在修复 bug 的冲刺期间就是一个不错的时机。
+
温和的 IRC 提醒也可以工作——同样,如果可能的话,战略性地定时。 例如,在错误冲刺期间将是一个非常好的时间。
  
另一种方法获得关注的方法是将几个相关的工单放在一起。当某人坐下来审阅一个他们已经有一段时间没有接触的区域中的bug时,可能需要几分钟的时间来想起该区域代码如何工作的所有细节。如果您将几个小错误的修复集中到一个类似主题的组中,那么您将成为一个有吸引力的目标,因为在一个区域的代码上提速工作的成本可以被用到多个工单上。
+
另一种获得吸引力的方法是将几张相关的票放在一起。 当某人坐下来检查他们有一段时间没有接触过的区域中的错误时,可能需要几分钟来记住该代码区域如何工作的所有细节。 如果您将几个小错误修复一起收集到一个类似的主题组中,您就会成为一个有吸引力的目标,因为加快代码区域的成本可以分摊到多张票上。
  
请不要通过电子邮件向任何人发邮件或反复提出同样的问题。 这种行为不会让你有任何额外的关注——当然也不会给你带来解决问题所需的关注。
+
请不要给任何人发电子邮件,也不要一遍又一遍地重复提出相同的问题。 这种行为不会引起您的任何额外关注——当然不是您解决问题所需的关注。
  
  
第47行: 第48行:
 
<div id="but-i-ve-reminded-you-several-times-and-you-keep-ignoring-my-patch" class="section">
 
<div id="but-i-ve-reminded-you-several-times-and-you-keep-ignoring-my-patch" class="section">
  
== 但是我已经提醒你好几遍了,你依然继续忽略我的补丁! ==
+
== 但是我已经提醒你好几次了,你一直无视我的补丁! ==
  
说真的 - 我们不会无视你的。 如果你的补丁没有包含在 Django 的工单,我们将关闭工单。 对于所有其他的工单,我们需要优先考虑我们的努力,这意味着一些工单将在其他人之前解决。
+
说真的 - 我们没有忽视你。 如果您的补丁没有机会包含在 Django 中,我们将关闭票证。 对于所有其他工单,我们需要优先处理我们的工作,这意味着一些工单将在其他工单之前得到解决。
  
确定 bug 修复优先级的标准之一是对于特定 bug 而言,可能会受到影响的人数。有可能影响许多人的 bug 一般会优先于那些边缘情况下的 bug。
+
用于确定错误修复优先级的标准之一是可能受给定错误影响的人数。 有可能影响很多人的错误通常会优先于那些边缘情况。
  
错误可能会被忽略的另一个原因是,如果错误是一个更大的问题的表现。 虽然我们可以花时间编写,测试和应用大量的小补丁,但有时候正确的解决方案是重建。 如果某个特定组件的重建或重构已经提出或正在进行中,那么您可能会发现影响该组件的错误不会得到太多关注。 再次,这只是优先考虑稀缺资源的问题。 通过集中重建,我们可以一次性关闭所有的 BUG,并且希望能够防止未来出现其他小 BUG。
+
可能会暂时忽略错误的另一个原因是错误是否是更大问题的征兆。 虽然我们可以花时间编写、测试和应用许多小补丁,但有时正确的解决方案是重建。 如果已提议或正在进行特定组件的重建或重构,您可能会发现影响该组件的错误不会得到太多关注。 同样,这是一个优先考虑稀缺资源的问题。 通过专注于重建,我们可以一次关闭所有小错误,并希望将来防止其他小错误出现。
  
不管什么原因,请记住,你可能会经常碰到一个特定的 bug,但并不一定每个 Django 用户都会遇到同样的 bug。 不同的用户以不同的方式使用 Django,在不同的条件下执行代码的不同部分。 我们评估相对优先事项时,会考虑整个社区的需求,而不是优先考虑对某个特定用户的影响。 当然,这并不意味着我们认为你的问题不重要,只是在有限的可用时间内,我们总是希望让 10 个人的问题得到解决,而不是只解决 1 个人的问题。
+
不管是什么原因,请记住,虽然您可能经常遇到特定的错误,但并不一定意味着每个 Django 用户都会遇到相同的错误。 不同的用户以不同的方式使用 Django,在不同的条件下强调代码的不同部分。 当我们评估相对优先级时,我们通常会尝试考虑整个社区的需求,而不是优先考虑对某个特定用户的影响。 这并不意味着我们认为您的问题不重要——只是在我们可用的有限时间内,我们总是会犯错,让 10 个人开心而不是让一个人开心。
  
  
第61行: 第62行:
  
 
</div>
 
</div>
 +
<div class="clearer">
  
[[Category:Django 3.0.x 中文文档]]
+
 
 +
 
 +
</div>
 +
 
 +
[[Category:Django 3.0.x 文档]]

2021年10月31日 (日) 04:08的最新版本

常见问题:贡献代码

如何开始向 Django 贡献代码?

谢谢提问! 我们已经写了一个完整的文档专门讨论这个问题。 它的标题是 Contributing to Django


几周前我在票务系统中提交了一个错误修复。 你为什么忽略我的补丁?

别担心:我们不会忽视你!

重要的是要了解“票被忽略”和“票尚未处理”之间的区别。 Django 的工单系统包含数百个未解决的工单,对最终用户功能有不同程度的影响,Django 的开发人员必须审查并确定优先级。

最重要的是:在 Django 上工作的人都是志愿者。 因此,我们在框架上工作的时间是有限的,并且会根据我们的空闲时间每周有所不同。 如果我们很忙,我们可能无法在 Django 上花费我们想要的那么多时间。

确保票在签到过程中不会被挂断的最好方法是让它变得非常容易,即使对于可能不熟悉该代码区域的人来说,也可以理解问题并验证修复:

  • 是否有关于如何重现错误的明确说明? 如果这涉及依赖项(例如 Pillow)、contrib 模块或特定数据库,即使对于不熟悉它的人来说,这些说明也足够清楚吗?
  • 如果故障单上附有多个补丁,是否清楚每个补丁的作用、哪些可以忽略以及哪些重要?
  • 补丁是否包含单元测试? 如果没有,是否有一个非常明确的解释为什么不呢? 测试简洁地表达了问题是什么,并表明补丁实际上修复了它。

如果您的补丁没有机会包含在 Django 中,我们不会忽略它——我们只会关闭票证。 因此,如果您的票仍然打开,这并不意味着我们不理会您; 这只是意味着我们还没有时间看它。


我何时以及如何提醒团队我关心的补丁?

向邮件列表发送礼貌、适时的消息是引起注意的一种方式。 要确定合适的时间,您需要密切关注时间表。 如果您在发布截止日期之前发布消息,则不太可能获得所需的关注。

温和的 IRC 提醒也可以工作——同样,如果可能的话,战略性地定时。 例如,在错误冲刺期间将是一个非常好的时间。

另一种获得吸引力的方法是将几张相关的票放在一起。 当某人坐下来检查他们有一段时间没有接触过的区域中的错误时,可能需要几分钟来记住该代码区域如何工作的所有细节。 如果您将几个小错误修复一起收集到一个类似的主题组中,您就会成为一个有吸引力的目标,因为加快代码区域的成本可以分摊到多张票上。

请不要给任何人发电子邮件,也不要一遍又一遍地重复提出相同的问题。 这种行为不会引起您的任何额外关注——当然不是您解决问题所需的关注。


但是我已经提醒你好几次了,你一直无视我的补丁!

说真的 - 我们没有忽视你。 如果您的补丁没有机会包含在 Django 中,我们将关闭票证。 对于所有其他工单,我们需要优先处理我们的工作,这意味着一些工单将在其他工单之前得到解决。

用于确定错误修复优先级的标准之一是可能受给定错误影响的人数。 有可能影响很多人的错误通常会优先于那些边缘情况。

可能会暂时忽略错误的另一个原因是错误是否是更大问题的征兆。 虽然我们可以花时间编写、测试和应用许多小补丁,但有时正确的解决方案是重建。 如果已提议或正在进行特定组件的重建或重构,您可能会发现影响该组件的错误不会得到太多关注。 同样,这是一个优先考虑稀缺资源的问题。 通过专注于重建,我们可以一次关闭所有小错误,并希望将来防止其他小错误出现。

不管是什么原因,请记住,虽然您可能经常遇到特定的错误,但并不一定意味着每个 Django 用户都会遇到相同的错误。 不同的用户以不同的方式使用 Django,在不同的条件下强调代码的不同部分。 当我们评估相对优先级时,我们通常会尝试考虑整个社区的需求,而不是优先考虑对某个特定用户的影响。 这并不意味着我们认为您的问题不重要——只是在我们可用的有限时间内,我们总是会犯错,让 10 个人开心而不是让一个人开心。