Documentation/translations/zh_TW/process/2.Process.rst

Source file repositories/reference/linux-study-clean/Documentation/translations/zh_TW/process/2.Process.rst

File Facts

System
Linux kernel
Corpus path
Documentation/translations/zh_TW/process/2.Process.rst
Extension
.rst
Size
21133 bytes
Lines
370
Domain
Support Tooling And Documentation
Bucket
Documentation
Inferred role
Support Tooling And Documentation: documentation
Status
atlas-only

Why This File Exists

Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.

Dependency Surface

Detected Declarations

Annotated Snippet

.. SPDX-License-Identifier: GPL-2.0

.. include:: ../disclaimer-zh_TW.rst

:Original: :ref:`Documentation/process/2.Process.rst <development_process>`

:Translator:

 時奎亮 Alex Shi <alex.shi@linux.alibaba.com>

:校譯:

 吳想成 Wu XiangCheng <bobwxc@email.cn>
 胡皓文 Hu Haowen <2023002089@link.tyut.edu.cn>

.. _tw_development_process:

開發流程如何進行
================

90年代早期的Linux內核開發是一件相當鬆散的事情,涉及的用戶和開發人員相對較少。
由於擁有數以百萬計的用戶羣,且每年有大約2000名開發人員參與進來,內核因此必須
發展出許多既定流程來保證開發的順利進行。要參與到流程中來,需要對此流程的進行
方式有一個紮實的理解。

總覽
----

內核開發人員使用一個鬆散的基於時間的發佈過程,每兩到三個月發佈一次新的主要
內核版本。最近的發佈歷史記錄如下:

	======  =================
	5.0	2019年3月3日
	5.1	2019年5月5日
	5.2	2019年7月7日
	5.3	2019年9月15日
	5.4	2019年11月24日
	5.5	2020年1月6日
	======  =================

每個5.x版本都是一個主要的內核版本,具有新特性、內部API更改等等。一個典型的5.x
版本包含大約13000個變更集,變更了幾十萬行代碼。因此,5.x是Linux內核開發的前
沿;內核使用滾動開發模型,不斷集成重大變化。

對於每個版本的補丁合併,遵循一個相對簡單的規則。在每個開發週期的開頭,“合併
窗口”被打開。這時,被認爲足夠穩定(並且被開發社區接受)的代碼被合併到主線內
核中。在這段時間內,新開發週期的大部分變更(以及所有主要變更)將以接近每天
1000次變更(“補丁”或“變更集”)的速度合併。

(順便說一句,值得注意的是,合併窗口期間集成的更改並不是憑空產生的;它們是經
提前收集、測試和分級的。稍後將詳細描述該過程的工作方式。)

合併窗口持續大約兩週。在這段時間結束時,Linus Torvalds將聲明窗口已關閉,並
釋放第一個“rc”內核。例如,對於目標爲5.6的內核,在合併窗口結束時發生的釋放
將被稱爲5.6-rc1。-rc1 版本是一個信號,表示合併新特性的時間已經過去,穩定下一
個內核的時間已經到來。

在接下來的6到10周內,只有修復問題的補丁才應該提交給主線。有時會允許更大的
更改,但這種情況很少發生;試圖在合併窗口外合併新功能的開發人員往往受不到
友好的接待。一般來說,如果您錯過了給定特性的合併窗口,最好的做法是等待下一
個開發週期。(偶爾會對未支持硬件的驅動程序進行例外;如果它們不改變已有代碼,
則不會導致迴歸,應該可以隨時被安全地加入)。

隨着修復程序進入主線,補丁速度將隨着時間的推移而變慢。Linus大約每週發佈一次
新的-rc內核;在內核被認爲足夠穩定並最終發佈前,一般會達到-rc6到-rc9之間。
然後,整個過程又重新開始了。

例如,這裏是5.4的開發週期進行情況(2019年):

	==============  ==============================

Annotation

Implementation Notes