.. SPDX-License-Identifier: GPL-2.0 .. include:: ../disclaimer-zh_TW.rst :Original: :ref:`Documentation/process/5.Posting.rst <development_posting>` :Translator: 時奎亮 Alex Shi <alex.shi@linux.alibaba.com> :æ ¡è¯: å³æƒ³æˆ Wu XiangCheng <bobwxc@email.cn> 胡皓文 Hu Haowen <src.res@email.cn> .. _tw_development_posting: ç™¼å¸ƒè£œä¸ ======== 您的工作é²æ—©æœƒæº–備好æ交給社å€é€²è¡Œå¯©æŸ¥ï¼Œä¸¦æœ€çµ‚包å«åˆ°ä¸»ç·šå…§æ ¸ä¸ã€‚毫ä¸ç¨€å¥‡ï¼Œ å…§æ ¸é–‹ç™¼ç¤¾å€å·²ç¶“發展出一套用於發布補ä¸çš„約定和éŽç¨‹ï¼›éµå¾ªé€™äº›ç´„定和éŽç¨‹å°‡ä½¿ åƒèˆ‡å…¶ä¸çš„æ¯å€‹äººçš„ç”Ÿæ´»æ›´åŠ è¼•é¬†ã€‚æœ¬æ–‡æª”è©¦åœ–æè¿°é€™äº›ç´„å®šçš„éƒ¨åˆ†ç´°ç¯€ï¼›æ›´å¤šä¿¡æ¯ ä¹Ÿå¯åœ¨ä»¥ä¸‹æ–‡æª”ä¸æ‰¾åˆ° :ref:`Documentation/translations/zh_TW/process/submitting-patches.rst <tw_submittingpatches>` å’Œ :ref:`Documentation/translations/zh_TW/process/submit-checklist.rst <tw_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_TW/process/submitting-patches.rst <tw_submittingpatches>` 文檔ä¸å°å®ƒå€‘進行了詳細æ述;下é¢æ˜¯ä¸€å€‹ç°¡çŸçš„總çµã€‚æ¯ä¸€è¡Œçš„æ ¼å¼å¦‚下: :: tag: Full Name <email address> optional-other-stuff 常用的標籤有: - Signed-off-by: 這是一個開發人員的è‰æ˜Žï¼Œè‰æ˜Žä»–或她有權æ交補ä¸ä»¥åŒ…å«åˆ°å…§æ ¸ ä¸ã€‚這表明åŒæ„開發者來æºèªè‰å”è°ï¼Œå…¶å…¨æ–‡è¦‹ :ref:`Documentation/translations/zh_TW/process/submitting-patches.rst <tw_submittingpatches>` 如果沒有åˆé©çš„ç°½å—,則ä¸èƒ½åˆä½µåˆ°ä¸»ç·šä¸ã€‚ - Co-developed-by: è²æ˜Žè£œä¸æ˜¯ç”±å¤šå€‹é–‹ç™¼äººå“¡å…±åŒå‰µå»ºçš„;當幾個人在一個補ä¸ä¸Š 工作時,它用於給出共åŒä½œè€…(除了 From: 所給出的作者之外)。由於 Co-developed-by: 表示作者身份,所以æ¯å€‹å…±åŒé–‹ç™¼äººï¼Œå¿…é ˆç·Šè·Ÿåœ¨ç›¸é—œåˆä½œä½œè€… çš„Signed-off-by之後。具體內容和示例見以下文件 :ref:`Documentation/translations/zh_TW/process/submitting-patches.rst <tw_submittingpatches>` - Acked-by: 表示å¦ä¸€å€‹é–‹ç™¼äººå“¡ï¼ˆé€šå¸¸æ˜¯ç›¸é—œä»£ç¢¼çš„ç¶è·äººå“¡ï¼‰åŒæ„補ä¸é©åˆåŒ…å« åœ¨å…§æ ¸ä¸ã€‚ - Tested-by: è²æ˜ŽæŸäººå·²ç¶“測試了補ä¸ä¸¦ç¢ºèªå®ƒå¯ä»¥å·¥ä½œã€‚ - Reviewed-by: 表示æŸé–‹ç™¼äººå“¡å·²ç¶“審查了補ä¸çš„æ£ç¢ºæ€§ï¼›æœ‰é—œè©³ç´°ä¿¡æ¯ï¼Œè«‹åƒé–± :ref:`Documentation/translations/zh_TW/process/submitting-patches.rst <tw_submittingpatches>` - Reported-by: æŒ‡å®šå ±å‘Šæ¤è£œä¸ä¿®å¾©çš„å•é¡Œçš„用戶;æ¤æ¨™è¨˜ç”¨æ–¼è¡¨ç¤ºæ„Ÿè¬ã€‚ - Cc:指定æŸäººæ”¶åˆ°äº†è£œä¸çš„副本,並有機會å°æ¤ç™¼è¡¨è©•è«–。 在補ä¸ä¸æ·»åŠ 標籤時è¦å°å¿ƒï¼šåªæœ‰Cc:æ‰é©åˆåœ¨æ²’有指定人員明確許å¯çš„情æ³ä¸‹æ·»åŠ 。 發é€è£œä¸ -------- 在寄出補ä¸ä¹‹å‰ï¼Œæ‚¨é‚„需è¦æ³¨æ„以下幾點: - 您確定您的郵件發é€ç¨‹åºä¸æœƒæ壞補ä¸å—Žï¼Ÿè¢«éƒµä»¶å®¢æˆ¶ç«¯æ›´æ”¹ç©ºç™½æˆ–ä¿®é£¾äº†è¡Œçš„è£œä¸ ç„¡æ³•è¢«å¦ä¸€ç«¯æŽ¥å—,並且通常ä¸æœƒé€²è¡Œä»»ä½•è©³ç´°æª¢æŸ¥ã€‚如果有任何疑å•ï¼Œå…ˆæŠŠè£œä¸å¯„ çµ¦ä½ è‡ªå·±ï¼Œè®“ä½ è‡ªå·±ç¢ºå®šå®ƒæ˜¯å®Œå¥½ç„¡æ的。 :ref:`Documentation/translations/zh_TW/process/email-clients.rst <tw_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 é¸é …,以é¿å…創建éŽæ·±çš„嵌套。