Debian

Debian 是第一個區分上游和打包變更日誌的發行版嗎?

  • September 5, 2017

我喜歡 Debian 提供各種變更日誌的方式。例如,對於大多數包它有

  • changelog.gz,上游更新日誌提供了任何兩個版本之間差異的詳細資訊,有時甚至是點版本。$ git shortlog如今,通常從正在使用的任何 VCS 中提取或任何等效命令。
  • changelog.Debian.gz,列出對包所做的更改/改進。一些常見的更改包括打包團隊的更改、標準版本的更改、更新建構依賴項、修復 Debian 中尚未被上游接受的某些問題的任何更新檔、對任何一個debian/rulesdebian/control可能值得注意且需要提及的任何更改.

雖然我對 Debian 的組織方式非常滿意,但我想知道這種擁有單獨的變更日誌、將上游變更與發行版變更分開跟踪以減少混亂的想法是否來自 Debian 或其他發行版。Debian 是第一個這樣做的發行版嗎?如果不是,這個想法是從哪裡來的?

Debian 不是第一個分離變更日誌的發行版,但它可能是第一個維護每個軟體包變更日誌的發行版。

軟體的變更日誌已經存在了很長時間(它們是實驗室筆記本或工程日誌的一個相當明顯的變體)。早期的 Linux 發行版以類似的方式保存自己的變更日誌。由於他們記錄了對分發所做的更改,因此它們自然與正在分發的軟體的更改日誌分開。例如,SLS有一個變更日誌,其中包含以下條目

920901: Initial release (.96p4).  Didn't use jump tables though.

921007: Release .98p0.  Jump tables used.

921011: menus.taz: new sysinstall and sysbuild.
       a1: New .98p1 image with new sysinstall
       a2: New rootdisk
       image.taz: 0.98p1 kernel, Fixed top.
       devs.taz:  modified /dev directory
       image.taz: Linux .98p1 image, ps, etc.
       lx96p1.taz: Linux source for .98p1 (replaces lx98.taz).
       tcpip.taz: Telnet and fpt 2.2.2 binaries.
       c4/: Added new disk, clisp to compiler series.
       x*: Reorganized and fixed double compressed fonts.

早期的MCC也有更改日誌,例如0.99p8 的這個

熟悉Slackware的使用者會發現格式很熟悉;Slackware 仍然維護著整個發行版的變更日誌

對於 SLS 和 Slackware 來說,一個單一的發行版變更日誌是有意義的,因為它們最初都是一個人的工作(SLS 的 Peter MacDonald,Slackware 的 Patrick Volkerding),並且考慮到整個發行版的變化,而不是單個包(在至少,不像現在這樣)。

正如您在關於 的郵件列表討論debian-devel中發現的那樣,Debian 中目前的變更日誌實踐並不是從一開始就存在的。在 1994 年初,Debian 0.91 有一個發行版的變更日誌,它的包不包含變更日誌(至少,不是它的二進制包)。到 1994 年底和 Debian 0.93,原始碼包有單獨的變更日誌,保存在debian.README裡面(其中還包含許可資訊);範例見LILO 的打包更新檔:

Changes

9-July-1995 Bruce Perens <Bruce@Pixar.com>
   Upgraded to version 16.

23-December-1994 Bruce Perens <Bruce@Pixar.com>
   Added Debian GNU/Linux package maintenance system files, and configured
   for Debian.

(請注意,按照郵件列表中的建議,查看諸如dpkgDebian 文件之類的軟體包並不是很有用,因為它們是本機軟體包,只有一個變更日誌涵蓋了軟體和軟體包更改。)

因此,Debian 似乎是第一個儲存每個軟體包、特定於發行版的變更日誌的Linux發行版,與上游的變更日誌分開。其他發行版也效仿,至少部分如此,例如RPM 將變更日誌儲存在其規範文件中(儘管通常比 Debian 變更日誌詳細資訊少,並且僅在原始碼包中)。BSD世界中可能有類似的做法,我沒有檢查過;而且我不記得九十年代初對於其他 Unix 系統有哪些打包計劃(如果有的話)。

引用自:https://unix.stackexchange.com/questions/388531