.. include:: ../disclaimer-zh_CN.rst :Original: :ref:`Documentation/process/5.Posting.rst <development_posting>` :Translator: 时奎亮 Alex Shi <alex.shi@linux.alibaba.com> :æ ¡è¯‘: å´æƒ³æˆ Wu XiangCheng <bobwxc@email.cn> .. _cn_development_posting: å‘å¸ƒè¡¥ä¸ ======== 您的工作迟早会准备好æ交给社区进行审查,并最终包å«åˆ°ä¸»çº¿å†…æ ¸ä¸ã€‚毫ä¸ç¨€å¥‡ï¼Œ å†…æ ¸å¼€å‘社区已ç»å‘展出一套用于å‘布补ä¸çš„约定和过程;éµå¾ªè¿™äº›çº¦å®šå’Œè¿‡ç¨‹å°†ä½¿ å‚与其ä¸çš„æ¯ä¸ªäººçš„ç”Ÿæ´»æ›´åŠ è½»æ¾ã€‚本文档试图æè¿°è¿™äº›çº¦å®šçš„éƒ¨åˆ†ç»†èŠ‚ï¼›æ›´å¤šä¿¡æ¯ ä¹Ÿå¯åœ¨ä»¥ä¸‹æ–‡æ¡£ä¸æ‰¾åˆ° :ref:`Documentation/translations/zh_CN/process/submitting-patches.rst <cn_submittingpatches>`, :ref:`Documentation/translations/zh_CN/process/submitting-drivers.rst <cn_submittingdrivers>` å’Œ :ref:`Documentation/translations/zh_CN/process/submit-checklist.rst <cn_submitchecklist>`。 何时邮寄 -------- 在补ä¸å®Œå…¨â€œå‡†å¤‡å¥½â€ä¹‹å‰ï¼Œé¿å…å‘布补ä¸æ˜¯ä¸€ç§æŒç»çš„诱惑。对于简å•çš„è¡¥ä¸ï¼Œè¿™ ä¸æ˜¯é—®é¢˜ã€‚但是如果æ£åœ¨å®Œæˆçš„工作很å¤æ‚,那么在工作完æˆä¹‹å‰ä»Žç¤¾åŒºèŽ·å¾—å馈就 å¯ä»¥èŽ·å¾—å¾ˆå¤šå¥½å¤„ã€‚å› æ¤ï¼Œæ‚¨åº”该考虑å‘布æ£åœ¨è¿›è¡Œçš„工作,甚至维护一个å¯ç”¨çš„Git æ ‘ï¼Œä»¥ä¾¿æ„Ÿå…´è¶£çš„å¼€å‘人员å¯ä»¥éšæ—¶èµ¶ä¸Šæ‚¨çš„工作。 当å‘布ä¸æœ‰å°šæœªå‡†å¤‡å¥½è¢«åŒ…å«çš„代ç ,最好在å‘布ä¸è¯´æ˜Žã€‚还应æåŠä»»ä½•æœ‰å¾…完æˆçš„ 主è¦å·¥ä½œå’Œä»»ä½•å·²çŸ¥é—®é¢˜ã€‚很少有人会愿æ„看那些被认为是åŠç”Ÿä¸ç†Ÿçš„è¡¥ä¸ï¼Œä½†æ˜¯ 那些愿æ„的人会带ç€ä»–们的点åæ¥ä¸€èµ·å¸®åŠ©ä½ 把工作推å‘æ£ç¡®çš„æ–¹å‘。 创建补ä¸ä¹‹å‰ ------------ 在考虑将补ä¸å‘é€åˆ°å¼€å‘社区之å‰ï¼Œæœ‰è®¸å¤šäº‹æƒ…应该åšã€‚包括: - å°½å¯èƒ½åœ°æµ‹è¯•ä»£ç ã€‚åˆ©ç”¨å†…æ ¸çš„è°ƒè¯•å·¥å…·ï¼Œç¡®ä¿å†…æ ¸ä½¿ç”¨äº†æ‰€æœ‰å¯èƒ½çš„é…ç½®é€‰é¡¹ç»„åˆ è¿›è¡Œæž„å»ºï¼Œä½¿ç”¨äº¤å‰ç¼–译器为ä¸åŒçš„体系结构进行构建ç‰ã€‚ - ç¡®ä¿æ‚¨çš„代ç 符åˆå†…æ ¸ä»£ç é£Žæ ¼æŒ‡å—。 - 您的更改是å¦å…·æœ‰æ€§èƒ½å½±å“ï¼Ÿå¦‚æžœæ˜¯è¿™æ ·ï¼Œæ‚¨åº”è¯¥è¿è¡ŒåŸºå‡†æµ‹è¯•æ¥æ˜¾ç¤ºæ‚¨çš„å˜æ›´çš„ å½±å“(或好处);结果的摘è¦åº”该包å«åœ¨è¡¥ä¸ä¸ã€‚ - ç¡®ä¿æ‚¨æœ‰æƒå‘布代ç 。如果这项工作是为雇主完æˆçš„,雇主对这项工作具有所有æƒï¼Œ 并且必须åŒæ„æ ¹æ®GPL对其进行å‘布。 一般æ¥è¯´ï¼Œåœ¨å‘布代ç 之å‰è¿›è¡Œä¸€äº›é¢å¤–çš„æ€è€ƒï¼Œå‡ 乎总是能在çŸæ—¶é—´å†…得到回报。 è¡¥ä¸å‡†å¤‡ -------- 准备补ä¸å‘布的工作é‡å¯èƒ½å¾ˆæƒŠäººï¼Œä½†åœ¨æ¤å°è¯•èŠ‚çœæ—¶é—´é€šå¸¸æ˜¯ä¸æ˜Žæ™ºçš„,å³ä½¿åœ¨çŸæœŸ 内亦然。 å¿…é¡»é’ˆå¯¹å†…æ ¸çš„ç‰¹å®šç‰ˆæœ¬å‡†å¤‡è¡¥ä¸ã€‚一般æ¥è¯´ï¼Œè¡¥ä¸åº”该基于Linusçš„Gitæ ‘ä¸çš„å½“å‰ ä¸»çº¿ã€‚å½“ä»¥ä¸»çº¿ä¸ºåŸºç¡€æ—¶ï¼Œè¯·ä»Žä¸€ä¸ªä¼—æ‰€å‘¨çŸ¥çš„å‘布点开始——如稳定版本或 -rc 版本å‘布点——而ä¸æ˜¯åœ¨ä¸€ä¸ªä»»æ„的主线分支点。 也å¯èƒ½éœ€è¦é’ˆå¯¹-mmã€linux-next或åç³»ç»Ÿæ ‘ç”Ÿæˆç‰ˆæœ¬ï¼Œä»¥ä¾¿äºŽæ›´å¹¿æ³›çš„测试和审查。 æ ¹æ®è¡¥ä¸çš„区域以åŠå…¶ä»–åœ°æ–¹çš„æƒ…å†µï¼Œé’ˆå¯¹å…¶ä»–æ ‘å»ºç«‹çš„è¡¥ä¸å¯èƒ½éœ€è¦å¤§é‡çš„å·¥ä½œæ¥ è§£å†³å†²çªå’Œå¤„ç†API更改。 åªæœ‰æœ€ç®€å•çš„更改æ‰åº”æ ¼å¼åŒ–为å•ä¸ªè¡¥ä¸ï¼›å…¶ä»–所有更改都应作为一系列逻辑更改进行。 分割补ä¸æ˜¯ä¸€é—¨è‰ºæœ¯ï¼›ä¸€äº›å¼€å‘人员花了很长时间æ¥å¼„清楚如何按照社区期望的方å¼æ¥ 分割。ä¸è¿‡ï¼Œè¿™äº›ç»éªŒæ³•åˆ™ä¹Ÿè®¸æœ‰å¸®åŠ©ï¼š - 您å‘布的补ä¸ç³»åˆ—å‡ ä¹Žè‚¯å®šä¸ä¼šæ˜¯å¼€å‘过程ä¸ç‰ˆæœ¬æŽ§åˆ¶ç³»ç»Ÿä¸çš„一系列更改。相å, 需è¦å¯¹æ‚¨æ‰€åšæ›´æ”¹çš„最终形å¼åŠ 以考虑,然åŽä»¥æœ‰æ„义的方å¼è¿›è¡Œæ‹†åˆ†ã€‚å¼€å‘人员对 离散的ã€è‡ªåŒ…å«çš„更改感兴趣,而ä¸æ˜¯æ‚¨åˆ›é€ 这些更改的原始路径。 - æ¯ä¸ªé€»è¾‘上独立的å˜æ›´éƒ½åº”è¯¥æ ¼å¼åŒ–为å•ç‹¬çš„è¡¥ä¸ã€‚这些更改å¯ä»¥æ˜¯å°çš„ï¼ˆå¦‚â€œå‘ æ¤ç»“æž„ä½“æ·»åŠ å—段â€ï¼‰æˆ–å¤§çš„ï¼ˆå¦‚æ·»åŠ ä¸€ä¸ªé‡è¦çš„新驱动程åºï¼‰ï¼Œä½†å®ƒä»¬åœ¨æ¦‚念上 应该是å°çš„,并且å¯ä»¥åœ¨ä¸€è¡Œå†…简述。æ¯ä¸ªè¡¥ä¸éƒ½åº”该åšä¸€ä¸ªç‰¹å®šçš„ã€å¯ä»¥å•ç‹¬ 检查并验è¯å®ƒæ‰€åšçš„事情的更改。 - æ¢ç§æ–¹å¼é‡ç”³ä¸Šè¿°å‡†åˆ™ï¼Œä¹Ÿå°±æ˜¯è¯´ï¼šä¸è¦åœ¨åŒä¸€è¡¥ä¸ä¸æ··åˆä¸åŒç±»åž‹çš„更改。如果 一个补ä¸ä¿®å¤äº†ä¸€ä¸ªå…³é”®çš„安全æ¼æ´žï¼Œåˆé‡æ–°æŽ’列了一些结构,还é‡æ–°æ ¼å¼åŒ–了代 ç ,那么它很有å¯èƒ½ä¼šè¢«å¿½ç•¥ï¼Œä»Žè€Œå¯¼è‡´é‡è¦çš„ä¿®å¤ä¸¢å¤±ã€‚ - æ¯ä¸ªè¡¥ä¸éƒ½åº”该能创建一个å¯ä»¥æ£ç¡®åœ°æž„建和è¿è¡Œçš„å†…æ ¸ï¼›å¦‚æžœè¡¥ä¸ç³»åˆ—在ä¸é—´è¢« æ–开,那么结果ä»åº”是一个æ£å¸¸å·¥ä½œçš„å†…æ ¸ã€‚éƒ¨åˆ†åº”ç”¨ä¸€ç³»åˆ—è¡¥ä¸æ˜¯ä½¿ç”¨ “git bisctâ€å·¥å…·æŸ¥æ‰¾å›žå½’的一个常è§åœºæ™¯ï¼›å¦‚果结果是一个æŸåçš„å†…æ ¸ï¼Œé‚£ä¹ˆå°†ä½¿ 那些从事追踪问题的高尚工作的开å‘äººå‘˜å’Œç”¨æˆ·çš„ç”Ÿæ´»æ›´åŠ è‰°éš¾ã€‚ - ä¸è¦è¿‡åˆ†åˆ†å‰²ã€‚一ä½å¼€å‘人员曾ç»å°†ä¸€ç»„针对å•ä¸ªæ–‡ä»¶çš„编辑分æˆ500个å•ç‹¬çš„è¡¥ä¸ å‘布,这并没有使他æˆä¸ºå†…æ ¸é‚®ä»¶åˆ—è¡¨ä¸æœ€å—欢迎的人。一个补ä¸å¯ä»¥ç›¸å½“大, åªè¦å®ƒä»ç„¶åŒ…å«ä¸€ä¸ªå•ä¸€çš„ *逻辑* å˜æ›´ã€‚ - 用一系列补ä¸æ·»åŠ 一个全新的基础设施,但是该设施在系列ä¸çš„最åŽä¸€ä¸ªè¡¥ä¸å¯ç”¨ 整个å˜æ›´ä¹‹å‰ä¸èƒ½ä½¿ç”¨ï¼Œè¿™çœ‹èµ·æ¥å¾ˆè¯±äººã€‚如果å¯èƒ½çš„è¯ï¼Œåº”该é¿å…è¿™ç§è¯±æƒ‘ï¼› å¦‚æžœè¿™ä¸ªç³»åˆ—å¢žåŠ äº†å›žå½’ï¼Œé‚£ä¹ˆäºŒåˆ†æ³•å°†æŒ‡å‡ºæœ€åŽä¸€ä¸ªè¡¥ä¸æ˜¯å¯¼è‡´é—®é¢˜çš„è¡¥ä¸ï¼Œ å³ä½¿çœŸæ£çš„bug在其他地方。åªè¦æœ‰å¯èƒ½ï¼Œæ·»åŠ 新代ç çš„è¡¥ä¸ç¨‹åºåº”该立å³æ¿€æ´»è¯¥ 代ç 。 创建完美补ä¸ç³»åˆ—的工作å¯èƒ½æ˜¯ä¸€ä¸ªä»¤äººæ²®ä¸§çš„过程,在完æˆâ€œçœŸæ£çš„工作â€ä¹‹åŽéœ€è¦ 花费大é‡çš„时间和æ€è€ƒã€‚但是如果åšå¾—好,花费的时间就是值得的。 è¡¥ä¸æ ¼å¼å’Œæ›´æ”¹æ—¥å¿— ------------------ æ‰€ä»¥çŽ°åœ¨ä½ æœ‰äº†ä¸€ç³»åˆ—å®Œç¾Žçš„è¡¥ä¸å¯ä»¥å‘布,但是这项工作还没有完æˆã€‚æ¯ä¸ªè¡¥ä¸éƒ½ 需è¦è¢«æ ¼å¼åŒ–æˆä¸€æ¡æ¶ˆæ¯ï¼Œä»¥å¿«é€Ÿè€Œæ¸…æ™°åœ°å°†å…¶ç›®çš„ä¼ è¾¾åˆ°ä¸–ç•Œå…¶ä»–åœ°æ–¹ã€‚ä¸ºæ¤ï¼Œ æ¯ä¸ªè¡¥ä¸å°†ç”±ä»¥ä¸‹éƒ¨åˆ†ç»„æˆï¼š - å¯é€‰çš„“Fromâ€è¡Œï¼Œè¡¨æ˜Žè¡¥ä¸ä½œè€…。åªæœ‰å½“ä½ é€šè¿‡ç”µå邮件å‘é€åˆ«äººçš„è¡¥ä¸æ—¶ï¼Œè¿™ä¸€è¡Œ æ‰æ˜¯å¿…须的,但是为防æ¢ç–‘é—®åŠ ä¸Šå®ƒä¹Ÿä¸ä¼šæœ‰ä»€ä¹ˆå处。 - 一行æ述,说明补ä¸çš„作用。对于在没有其他上下文的情况下看到该消æ¯çš„读者æ¥è¯´ï¼Œ 该消æ¯åº”足以确定修补程åºçš„范围;æ¤è¡Œå°†æ˜¾ç¤ºåœ¨â€œshort form(简çŸæ ¼å¼ï¼‰â€å˜æ›´ 日志ä¸ã€‚æ¤æ¶ˆæ¯é€šå¸¸éœ€è¦å…ˆåŠ 上å系统å称å‰ç¼€ï¼Œç„¶åŽæ˜¯è¡¥ä¸çš„目的。例如: :: gpio: fix build on CONFIG_GPIO_SYSFS=n - 一行空白,åŽæŽ¥è¡¥ä¸å†…容的详细æ述。æ¤æè¿°å¯ä»¥æ˜¯ä»»æ„需è¦çš„é•¿åº¦ï¼›å®ƒåº”è¯¥è¯´æ˜Žè¡¥ä¸ çš„ä½œç”¨ä»¥åŠä¸ºä»€ä¹ˆå®ƒåº”è¯¥åº”ç”¨äºŽå†…æ ¸ã€‚ - ä¸€ä¸ªæˆ–å¤šä¸ªæ ‡è®°è¡Œï¼Œè‡³å°‘æœ‰ä¸€ä¸ªç”±è¡¥ä¸ä½œè€…çš„ Signed-off-by ç¾åã€‚æ ‡è®°å°†åœ¨ä¸‹é¢ è¯¦ç»†æ述。 上é¢çš„项目一起构æˆè¡¥ä¸çš„å˜æ›´æ—¥å¿—。写一则好的å˜æ›´æ—¥å¿—是一门至关é‡è¦ä½†å¸¸å¸¸è¢« 忽视的艺术;值得花一点时间æ¥è®¨è®ºè¿™ä¸ªé—®é¢˜ã€‚å½“ä½ ç¼–å†™å˜æ›´æ—¥å¿—æ—¶ï¼Œä½ åº”è¯¥è®°ä½æœ‰ 很多ä¸åŒçš„äººä¼šè¯»ä½ çš„è¯ã€‚å…¶ä¸åŒ…括å系统维护人员和审查人员,他们需è¦å†³å®šæ˜¯å¦ 应该åˆå¹¶è¡¥ä¸ï¼Œåˆ†é”€å•†å’Œå…¶ä»–维护人员试图决定是å¦åº”该将补ä¸åå‘移æ¤åˆ°å…¶ä»–å†…æ ¸ï¼Œ 缺陷æœå¯»äººå‘˜æƒ³çŸ¥é“è¡¥ä¸æ˜¯å¦å¯¼è‡´ä»–们æ£åœ¨è¿½æŸ¥çš„问题,以åŠæƒ³çŸ¥é“å†…æ ¸å¦‚ä½•å˜åŒ–çš„ 用户ç‰ç‰ã€‚一个好的å˜æ›´æ—¥å¿—以最直接和最简æ´çš„æ–¹å¼å‘æ‰€æœ‰è¿™äº›äººä¼ è¾¾æ‰€éœ€çš„ä¿¡æ¯ã€‚ 在结尾,总结行应该æè¿°å˜æ›´çš„å½±å“和动机,以åŠåœ¨ä¸€è¡Œçº¦æŸæ¡ä»¶ä¸‹å¯èƒ½å‘生的å˜åŒ–。 然åŽï¼Œè¯¦ç»†çš„æè¿°å¯ä»¥è¯¦è¿°è¿™äº›ä¸»é¢˜ï¼Œå¹¶æ供任何需è¦çš„é™„åŠ ä¿¡æ¯ã€‚如果补ä¸ä¿®å¤äº† 一个缺陷,请引用引入该缺陷的æ交(如果å¯èƒ½ï¼Œè¯·åœ¨å¼•ç”¨æ交时åŒæ—¶æ供其 id å’Œ æ ‡é¢˜ï¼‰ã€‚å¦‚æžœæŸä¸ªé—®é¢˜ä¸Žç‰¹å®šçš„日志或编译器输出相关è”,请包å«è¯¥è¾“出以帮助其他 人æœç´¢åŒä¸€é—®é¢˜çš„解决方案。如果更改是为了支æŒä»¥åŽè¡¥ä¸ä¸çš„其他更改,那么应当 说明。如果更改了内部API,请详细说明这些更改以åŠå…¶ä»–å¼€å‘人员应该如何å“应。 一般æ¥è¯´ï¼Œä½ 越把自己放在æ¯ä¸ªé˜…è¯»ä½ å˜æ›´æ—¥å¿—的人的ä½ç½®ä¸Šï¼Œå˜æ›´æ—¥å¿—ï¼ˆå’Œå†…æ ¸ 作为一个整体)就越好。 ä¸æ¶ˆè¯´ï¼Œå˜æ›´æ—¥å¿—是将å˜æ›´æ交到版本控制系统时使用的文本。接下æ¥å°†æ˜¯ï¼š - è¡¥ä¸æœ¬èº«ï¼Œé‡‡ç”¨ç»Ÿä¸€çš„(“-uâ€ï¼‰è¡¥ä¸æ ¼å¼ã€‚使用“-pâ€é€‰é¡¹æ¥diff将使函数å与 更改相关è”,从而使结果补ä¸æ›´å®¹æ˜“被其他人读å–。 您应该é¿å…在补ä¸ä¸åŒ…括与更改ä¸ç›¸å…³æ–‡ä»¶ï¼ˆä¾‹å¦‚,构建过程生æˆçš„文件或编辑器 备份文件)。文档目录ä¸çš„“dontdiffâ€æ–‡ä»¶åœ¨è¿™æ–¹é¢æœ‰å¸®åŠ©ï¼›ä½¿ç”¨â€œ-Xâ€é€‰é¡¹å°† å…¶ä¼ é€’ç»™diff。 上é¢æåˆ°çš„æ ‡ç¾ï¼ˆtag)用于æè¿°å„ç§å¼€å‘人员如何与这个补ä¸çš„å¼€å‘相关è”。 :ref:`Documentation/translations/zh_CN/process/submitting-patches.rst <cn_submittingpatches>` 文档ä¸å¯¹å®ƒä»¬è¿›è¡Œäº†è¯¦ç»†æ述;下é¢æ˜¯ä¸€ä¸ªç®€çŸçš„总结。æ¯ä¸€è¡Œçš„æ ¼å¼å¦‚下: :: tag: Full Name <email address> optional-other-stuff å¸¸ç”¨çš„æ ‡ç¾æœ‰ï¼š - Signed-off-by: 这是一个开å‘人员的è¯æ˜Žï¼Œè¯æ˜Žä»–或她有æƒæ交补ä¸ä»¥åŒ…å«åˆ°å†…æ ¸ ä¸ã€‚这表明åŒæ„å¼€å‘者æ¥æºè®¤è¯åè®®ï¼Œå…¶å…¨æ–‡è§ :ref:`Documentation/translations/zh_CN/process/submitting-patches.rst <cn_submittingpatches>` 如果没有åˆé€‚çš„ç¾å—,则ä¸èƒ½åˆå¹¶åˆ°ä¸»çº¿ä¸ã€‚ - Co-developed-by: 声明补ä¸æ˜¯ç”±å¤šä¸ªå¼€å‘人员共åŒåˆ›å»ºçš„ï¼›å½“å‡ ä¸ªäººåœ¨ä¸€ä¸ªè¡¥ä¸ä¸Š 工作时,它用于给出共åŒä½œè€…(除了 From: 所给出的作者之外)。由于 Co-developed-by: 表示作者身份,所以æ¯ä¸ªå…±åŒå¼€å‘人,必须紧跟在相关åˆä½œä½œè€… çš„Signed-off-by之åŽã€‚具体内容和示例è§ä»¥ä¸‹æ–‡ä»¶ :ref:`Documentation/translations/zh_CN/process/submitting-patches.rst <cn_submittingpatches>` - Acked-by: 表示å¦ä¸€ä¸ªå¼€å‘人员(通常是相关代ç 的维护人员)åŒæ„è¡¥ä¸é€‚åˆåŒ…å« åœ¨å†…æ ¸ä¸ã€‚ - Tested-by: 声明æŸäººå·²ç»æµ‹è¯•äº†è¡¥ä¸å¹¶ç¡®è®¤å®ƒå¯ä»¥å·¥ä½œã€‚ - Reviewed-by: 表示æŸå¼€å‘人员已ç»å®¡æŸ¥äº†è¡¥ä¸çš„æ£ç¡®æ€§ï¼›æœ‰å…³è¯¦ç»†ä¿¡æ¯ï¼Œè¯·å‚阅 :ref:`Documentation/translations/zh_CN/process/submitting-patches.rst <cn_submittingpatches>` - Reported-by: 指定报告æ¤è¡¥ä¸ä¿®å¤çš„问题的用户;æ¤æ ‡è®°ç”¨äºŽè¡¨ç¤ºæ„Ÿè°¢ã€‚ - Cc:指定æŸäººæ”¶åˆ°äº†è¡¥ä¸çš„副本,并有机会对æ¤å‘表评论。 在补ä¸ä¸æ·»åŠ æ ‡ç¾æ—¶è¦å°å¿ƒï¼šåªæœ‰Cc:æ‰é€‚åˆåœ¨æ²¡æœ‰æŒ‡å®šäººå‘˜æ˜Žç¡®è®¸å¯çš„æƒ…å†µä¸‹æ·»åŠ ã€‚ å‘é€è¡¥ä¸ -------- 在寄出补ä¸ä¹‹å‰ï¼Œæ‚¨è¿˜éœ€è¦æ³¨æ„ä»¥ä¸‹å‡ ç‚¹ï¼š - 您确定您的邮件å‘é€ç¨‹åºä¸ä¼šæŸåè¡¥ä¸å—ï¼Ÿè¢«é‚®ä»¶å®¢æˆ·ç«¯æ›´æ”¹ç©ºç™½æˆ–ä¿®é¥°äº†è¡Œçš„è¡¥ä¸ æ— æ³•è¢«å¦ä¸€ç«¯æŽ¥å—,并且通常ä¸ä¼šè¿›è¡Œä»»ä½•è¯¦ç»†æ£€æŸ¥ã€‚如果有任何疑问,先把补ä¸å¯„ ç»™ä½ è‡ªå·±ï¼Œè®©ä½ è‡ªå·±ç¡®å®šå®ƒæ˜¯å®Œå¥½æ— æŸçš„。 :ref:`Documentation/translations/zh_CN/process/email-clients.rst <cn_email_clients>` æ供了一些有用的æ示,å¯ä»¥è®©ç‰¹å®šçš„邮件客户端æ£å¸¸å‘é€è¡¥ä¸ã€‚ - ä½ ç¡®å®šä½ çš„è¡¥ä¸æ²¡æœ‰è’å”的错误å—?您应该始终通过scripts/checkpatch.pl检查 è¡¥ä¸ç¨‹åºï¼Œå¹¶è§£å†³å®ƒæ出的问题。请记ä½ï¼Œcheckpatch.plï¼Œè™½ç„¶ä½“çŽ°äº†å¯¹å†…æ ¸è¡¥ä¸ åº”è¯¥æ˜¯ä»€ä¹ˆæ ·çš„å¤§é‡æ€è€ƒï¼Œä½†å®ƒå¹¶ä¸æ¯”您èªæ˜Žã€‚如果修å¤checkpatch.pl给的问题会 使代ç å˜å¾—更糟,请ä¸è¦è¿™æ ·åšã€‚ è¡¥ä¸åº”始终以纯文本形å¼å‘é€ã€‚请ä¸è¦å°†å®ƒä»¬ä½œä¸ºé™„件å‘é€ï¼›è¿™ä½¿å¾—审阅者在ç”å¤ä¸æ›´éš¾ 引用补ä¸çš„部分。相å,åªéœ€å°†è¡¥ä¸ç›´æŽ¥æ”¾åˆ°æ‚¨çš„消æ¯ä¸ã€‚ 寄出补ä¸æ—¶ï¼Œé‡è¦çš„是将副本å‘é€ç»™ä»»ä½•å¯èƒ½æ„Ÿå…´è¶£çš„人。与其他一些项目ä¸åŒï¼Œå†…æ ¸ 鼓励人们甚至错误地å‘é€è¿‡å¤šçš„副本;ä¸è¦å‡å®šç›¸å…³äººå‘˜ä¼šçœ‹åˆ°æ‚¨åœ¨é‚®ä»¶åˆ—表ä¸çš„å‘布。 尤其是,副本应å‘é€è‡³ï¼š - å—å½±å“å系统的维护人员。如å‰æ‰€è¿°ï¼Œç»´æŠ¤äººå‘˜æ–‡ä»¶æ˜¯æŸ¥æ‰¾è¿™äº›äººå‘˜çš„首选地方。 - 其他在åŒä¸€é¢†åŸŸå·¥ä½œçš„å¼€å‘人员,尤其是那些现在å¯èƒ½åœ¨é‚£é‡Œå·¥ä½œçš„å¼€å‘人员。使用 git查看还有è°ä¿®æ”¹äº†æ‚¨æ£åœ¨å¤„ç†çš„文件,这很有帮助。 - 如果您对æŸé”™è¯¯æŠ¥å‘Šæˆ–功能请求åšå‡ºå“应,也å¯ä»¥æŠ„é€åŽŸå§‹å‘é€äººã€‚ - 将副本å‘é€åˆ°ç›¸å…³é‚®ä»¶åˆ—è¡¨ï¼Œæˆ–è€…è‹¥æ— ç›¸å…³åˆ—è¡¨ï¼Œåˆ™å‘é€åˆ°linux-kernel列表。 - 如果您æ£åœ¨ä¿®å¤ä¸€ä¸ªç¼ºé™·ï¼Œè¯·è€ƒè™‘该修å¤æ˜¯å¦åº”è¿›å…¥ä¸‹ä¸€ä¸ªç¨³å®šæ›´æ–°ã€‚å¦‚æžœæ˜¯è¿™æ ·ï¼Œ è¡¥ä¸å‰¯æœ¬ä¹Ÿåº”å‘到stable@vger.kernel.org 。å¦å¤–,在补ä¸æœ¬èº«çš„æ ‡ç¾ä¸æ·»åŠ 一个 “Cc: stable@vger.kernel.orgâ€ï¼›è¿™å°†ä½¿ç¨³å®šç‰ˆå›¢é˜Ÿåœ¨ä¿®å¤è¿›å…¥ä¸»çº¿æ—¶æ”¶åˆ°é€šçŸ¥ã€‚ 当为一个补ä¸é€‰æ‹©æŽ¥æ”¶è€…æ—¶ï¼Œæœ€å¥½æ¸…æ¥šä½ è®¤ä¸ºè°æœ€ç»ˆä¼šæŽ¥å—这个补ä¸å¹¶å°†å…¶åˆå¹¶ã€‚虽然 å¯ä»¥å°†è¡¥ä¸ç›´æŽ¥å‘ç»™Linus Torvalds并让他åˆå¹¶ï¼Œä½†é€šå¸¸æƒ…况下ä¸ä¼šè¿™æ ·åšã€‚Linus很 忙,并且有åç³»ç»Ÿç»´æŠ¤äººå‘˜è´Ÿè´£ç›‘è§†å†…æ ¸çš„ç‰¹å®šéƒ¨åˆ†ã€‚é€šå¸¸æ‚¨ä¼šå¸Œæœ›ç»´æŠ¤äººå‘˜åˆå¹¶æ‚¨çš„ è¡¥ä¸ã€‚如果没有明显的维护人员,Andrew Morton通常是最åŽçš„è¡¥ä¸æŽ¥æ”¶è€…。 è¡¥ä¸éœ€è¦å¥½çš„主题行。补ä¸ä¸»é¢˜è¡Œçš„è§„èŒƒæ ¼å¼å¦‚下: :: [PATCH nn/mm] subsys: one-line description of the patch å…¶ä¸â€œnnâ€æ˜¯è¡¥ä¸çš„åºå·ï¼Œâ€œmmâ€æ˜¯ç³»åˆ—ä¸è¡¥ä¸çš„总数,“subsysâ€æ˜¯å—å½±å“å系统的 å称。当然,一个å•ç‹¬çš„è¡¥ä¸å¯ä»¥çœç•¥nn/mm。 如果您有一系列é‡è¦çš„è¡¥ä¸ï¼Œé‚£ä¹ˆé€šå¸¸å‘é€ä¸€ä¸ªç®€ä»‹ä½œä¸ºç¬¬ã€‡éƒ¨åˆ†ã€‚ä¸è¿‡ï¼Œè¿™ä¸ªçº¦å®š 并没有得到普ééµå¾ªï¼›å¦‚果您使用它,请记ä½ç®€ä»‹ä¸çš„ä¿¡æ¯ä¸ä¼šè¿›å…¥å†…æ ¸å˜æ›´æ—¥å¿—。 å› æ¤ï¼Œè¯·ç¡®ä¿è¡¥ä¸æœ¬èº«å…·æœ‰å®Œæ•´çš„å˜æ›´æ—¥å¿—ä¿¡æ¯ã€‚ 一般æ¥è¯´ï¼Œå¤šéƒ¨åˆ†è¡¥ä¸çš„第二部分和åŽç»éƒ¨åˆ†åº”作为对第一部分的回å¤å‘é€ï¼Œä»¥ä¾¿å®ƒä»¬ 在接收端都连接在一起。åƒgitå’Œcoiltè¿™æ ·çš„å·¥å…·æœ‰å‘½ä»¤ï¼Œå¯ä»¥é€šè¿‡é€‚当的线程å‘é€ ä¸€ç»„è¡¥ä¸ã€‚但是,如果您有一长串补ä¸ï¼Œå¹¶æ£ä½¿ç”¨git,请ä¸è¦ä½¿ç”¨â€“-chain-reply-to 选项,以é¿å…创建过深的嵌套。