我有 Ubuntu 18.04.3 LTS。emacs --version
返回GNU Emacs 25.2.2
并apt policy emacs
返回Installed: 47.0 Candidate: 47.0
。好吧什么?我以为 Emacs 的最新版本是 27 左右。尽管如此,这不是 Emacs 的版本命令返回的内容。有人可以解释一下吗?
我还以为 Ubuntu 是基于 Debian 的,并使用了他们的存储库,所以我检查了Debian 网站和 Emacs 上都有1:26.1+1-3.2+deb10u1
。那么,Ubuntu 没有从 Debian 存储库中提取?
为什么 Ubuntu 中的 Emacs 仍然停留在 25.2.2,而最新版本是 27。我知道 Ubuntu 的存储库应该是稳定的,所以它经常落后。但这真的是比官方版本落后两个版本的原因吗?
就 Ubuntu 的存储库而言,我是否已更新至最新版本?
答案1
在我的 Ubuntu 系统上(20.04)该软件几乎在所有情况下都比我的等效 Debian 更新(靶心/11 测试/sid) 系统(有几个是完全相同的,我不知道 Debian 在哪里更晚,但这是可能的,而且通常只差几个小时或一天或两天,除非 Ubuntu 处于冻结状态)。
在您的文章中,您将 2018 年 4 月发布的 Ubuntu 与 2019 年 7 月发布的 Debian 进行了比较?这两个版本的发布时间相隔一年多 - 那么为什么您认为较旧的 Ubuntu 版本会有 2018 年 4 月尚未发布的版本。
Ubuntu向后移植安全修复;并且只更新到更高版本的软件如果安全修复的反向移植比仅仅升级软件版本(测试等)需要更多工作。这并非 Ubuntu 独有。如果您想要最新版本,则可以使用更高版本(例如,Ubuntu 19.10 是 2019 年 10 月发布的版本)。
软件包版本有没有什么与软件包中包含的软件有关。软件包版本是为了允许升级而维护的;以及发布升级到下一个版本 - 因此,即使软件包中包含的软件相同,它们也需要增加,因为您从一个版本移动到下一个版本时使用的是发布升级流程、小包装或文本文件更改,而这些更改不是上游代码的一部分。假设软件包版本与软件包中的软件相关是错误的(尽管有时它们是等效的;这些只是“幸运的'巧合,因为它们确实是不同的东西)。这句话既适用于 Debian,也适用于 Ubuntu。
要查找软件版本,我建议访问 packages.ubuntu.com(例如。https://packages.ubuntu.com/search?suite=all&searchon=names&keywords=emacs了解 emacs 的详细信息)。您还可以通过终端进行探索,前提是您使用的软件包列表是最新的和您正在使用当前镜像(根据我的经验,很多人不检查后视镜)