24.4. 追蹤發展分支

FreeBSD 有兩個發展分支: FreeBSD-CURRENT and FreeBSD-STABLE.

本節將將解釋每個分支和他的預設的使用者,以及如何保持每個分支系統在最新。

24.4.1. 使用 FreeBSD-CURRENT

FreeBSD-CURRENT 是 FreeBSD 開發的最前線,FreeBSD-CURRENT的使用者應有較強的技術能力。 技術能力較弱的使用者想追蹤發展分支應該追蹤 FreeBSD-STABLE。

FreeBSD-CURRENT 是 FreeBSD 最新的原始碼,包括正在進行的工作, 實驗性的改變,以及可能會或可能不會在下一個官方發行版出現的過渡時期機制。 而許多 FreeBSD 開發者每天編譯 FreeBSD-CURRENT 原始碼,可能有一段短暫的時間原始碼無法編譯成功。 這些問題會儘快被解決,但是無論 FreeBSD-CURRENT 帶來災難或是新功能,在同步原始碼時都要考量的問題。

FreeBSD-CURRENT 適合下列三類人:

  1. 積極致力於某一部份原始碼樹的 FreeBSD 社群成員。

  2. 擔任積極測試者的 FreeBSD 社群成員。 他們願意花時間解決問題,提出 FreeBSD 改變的建議和的大方向,並發布修補。

  3. 關注某些事物,或是想參考目前的原始碼,或是偶爾提供註解或貢獻原始碼的使用者。

FreeBSD-CURRENT 不應該被認為是在下一版發行前 取得最新功能的快速途徑,因為尚未發行的功能並未被完整測試,很可能有bug。 他也不是一個取得bug修補的快速方式, 因為任何已知bug的修補有可能產生新的bug。 FreeBSD-CURRENT 沒有任何 官方支援

追蹤 FreeBSD-CURRENT:

  1. 加入 freebsd-currentsvn-src-head 郵件論壇。這是必須的 以查看人們關於系統目前狀態的評論並接收 FreeBSD-CURRENT 目前狀態的重要公告。

    svn-src-head 論壇紀錄每一次修改的紀錄, 和可能產生的副作用的相關資訊

    前往 http://lists.FreeBSD.org/mailman/listinfo,點選論壇來訂閱,照網頁指示的步驟作, 為了追蹤整個原始碼樹,不是只有 FreeBSD-CURRENT 的改變,請訂閱 svn-src-all論壇。

  2. 同步 FreeBSD-CURRENT 原始碼。 通常使用 svn 來檢查節 A.4.4, “Subversion Mirror Sites” 列出的 Subversion 鏡像站 head 分支的-CURRENT 原始碼。

    網路很慢或是受到限制的使用者可以如節 A.3, “Using CTM” 所描述的,使用 CTM 來替代,但是他並不如 svn 一樣值得信賴, svn 是建議的同步原始碼的方法。

  3. 由於程式碼庫的大小的, 有些使用者選擇只同步部份他們有興趣或提供修補貢獻的部份原始碼。然而, 計劃從原始碼編譯整個作業系統的使用者必須下載 全部 的FreeBSD-CURRENT,而不是只有選擇的部份。

    編譯 FreeBSD-CURRENT 前 ,請非常仔細地閱讀 /usr/src/Makefile 並遵從 節 24.6, “重新編譯 World”的指示。 閱讀 FreeBSD-CURRENT 郵遞論壇/usr/src/UPDATING 來掌握下一發行版的最新狀態。

  4. 熱血!很鼓勵 FreeBSD-CURRENT 使用者 發表他們對加強哪些功能或是修復哪些錯誤的建議。 如果您在建議時能附上相關程式碼的話, 那真是太棒了!

24.4.2. 使用 FreeBSD-STABLE

主要發行版就是由 FreeBSD-STABLE 這個開發分支而來。 修改進入這個分支的速度比較慢, 並且假設這些修改已經先在 FreeBSD-CURRENT 測試過。 這仍然是一個開發分支,而且在任何時候,FreeBSD-STABLE 的原始碼都可能適合或不適合一般的使用。他就只是另一個開發分支,不是給終端使用者用的。 沒有要進行測試的使用者應該執行最新的 FreeBSD 發行版。

若有興趣去追蹤、貢獻 FreeBSD 開發過程,尤其是會跟 FreeBSD接下來的發行版有關的人,應該考慮採用 FreeBSD-STABLE。

儘管 FreeBSD-STABLE 應該在任何時候均能正確編譯、運作,但是沒有人能擔保一定如此。因為使用 FreeBSD-STABLE 的人比 FreeBSD-CURRENT多,無可避免地, 有時候會在 FreeBSD-STABLE 發現錯誤和極端的狀況,而這在 FreeBSD-CURRENT 並非顯而易見。 由於上述這些理由,我們並不建議盲目追隨 FreeBSD-STABLE。 特別重要的是 不要在沒有於開發或測試環境完整測試程式碼之前, 升級任何上線的伺服器到 FreeBSD-STABLE。

追蹤 FreeBSD-STABLE:

  1. 訂閱freebsd-stable論壇來隨時瞭解 FreeBSD-STABLE 編譯時的相依關係 或是其他特別需要注意的議題。 開發者在考慮一些有爭議的修正或更新時,就會先在這裡發信說明, 給使用者有機會可以反應, 看他們對所提的更改是否有什麼建議或問題。

    訂閱要追蹤分支的 svn相關論壇。 例如,追蹤9-STABLE分支的使用者應該訂閱svn-src-stable-9論壇。 這個論壇紀錄每一次修改的紀錄,和可能產生的副作用的相關資訊。

    前往http://lists.FreeBSD.org/mailman/listinfo,點選論壇來訂閱,照網頁指示的步驟作, 為了追蹤整個原始碼樹,請訂閱svn-src-all論壇。

  2. 要安裝一個新的 FreeBSD-STABLE 系統, 從 FreeBSD 鏡像站安裝最新的 FreeBSD-STABLE 發行版 或使用從 FreeBSD-STABLE每個月的 snapshot built來安裝。更多關於快照的資訊, 請參考www.freebsd.org/snapshots

    要編譯或升級已經安裝的 FreeBSD 系統至 FreeBSD-STABLE, 請使用svn 來檢查要安裝分支的原始碼。 分支的名稱,例如 stable/9,列在www.freebsd.org/releng。 如果沒有可靠的網際網路連線可以使用CTM (節 A.3, “Using CTM”) 。

  3. 在編譯或升級到 FreeBSD-STABLE 之前 , 請仔細閱讀 /usr/src/Makefile 並遵照節 24.6, “重新編譯 World”的指示。閱讀 FreeBSD-STABLE 郵遞論壇/usr/src/UPDATING下一發行版的最新狀態。

本文及其他文件,可由此下載: ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/

若有 FreeBSD 方面疑問,請先閱讀 FreeBSD 相關文件,如不能解決的話,再洽詢 <questions@FreeBSD.org>。

關於本文件的問題,請洽詢 <doc@FreeBSD.org>。