Kernel Newbies
  • Comments
  • Immutable Page
  • Menu
    • Navigation
    • RecentChanges
    • FindPage
    • Local Site Map
    • Help
    • HelpContents
    • HelpOnMoinWikiSyntax
    • Display
    • Attachments
    • Info
    • Raw Text
    • Print View
    • Edit
    • Load
    • Save
  • Login
  • FAQ

  • Upstream Merge Guide

  • Kernel Janitors

  • Kernel Mentors

Wiki bits

  • Site Editors

  • Navigation Menu

  • WikiWall

  • Hosted

Navigation

  • RecentChanges
  • FindPage
  • HelpContents
Revision 6 as of 2010-05-28 12:37:32
KernelNewbiesTW:
  • UpstreamMerge

Kernelnewbies網站的這個部份本意是如何讓程式碼併入上層核心的手冊, 由Linus Torvalds維護和可以從kernel.org取得的的核心樹.

合併至上游程式碼有什麼好處?

合併你的原始碼至上游要花費精力,貢獻和時間. 過程並不容易, 因為Linus接受程式碼進入他的版本時, 他冒著這一輩子得維護該程式碼的風險. 如果品質差的程式碼被接受, 維護Linux核心會變得非常睏難. 這些理由還有更多意指讓程式碼收入Linux核心門坎相對的提高.

然而, 讓你的程式碼收入核心也有許多的好處.

可維護性

追上上游核心變更是艱巨任務, 每次上游核心一變更要花費開發者數天或是好幾個禮拜的時間. 存在上游的程式碼沒有這樣的議題存在, 因為核心開發人員頃向簡化查找原始碼和修補受到預定發佈API變更影響的驅動程式. 這樣一來讓空出你的開發人員作更重要的工作.

普遍存在

你的原始碼將被出現在每一個Linux發行版本裡. 這關係著如果你想販賣你的硬體給每個Linux使用者. 不再需要遊說讓你的修補程式成為發行版本的一部份(困難), 你可以只要求他們切換設定選項(容易).

品質控制

世界上某些最好的開發者將隨著你的原始碼作良好整理, 這可能會有幾天或數個禮拜的尷尬時期, 但是最後程式碼往往運作更好且更容易維護. 在某些案例上遊開發者讓網路和儲存驅動程式增加30%速度, 使得應體更吸引顧客.

如何讓程式碼和上游合併

合並程式碼到上游核心對沒有經驗的人可能是讓人怯步的過程. 然而, 靠著正確的方式, 你將不會失去讓上游接受的方向.

  • /MergingStrategy 合併程式碼到上游的策略.

  • /WhatNotToDo 如果你想要和上游合併什麼是你不應該作.

  • /GettingFlamed 歐 不! 核心開發者批評我, 我的程式碼還有我的貓! 現在我該怎麼辦?

Helpful documents from the kernel tree:

    • /SubmittingDrivers how to submit device drivers to the linux kernel.

    • /SubmittingPatches how to submit patches to the linux kernel.

    • /SubmitChecklist a checklist for submitting code upstream.

Other documents on getting patches upstream:

    • The Perfect Patch
    • http://linux.yyz.us/patch-format.html

    • The Linux Driver Project
  • MoinMoin Powered
  • Python Powered
  • GPL licensed
  • Valid HTML 4.01