当我们已经有了 `apt-get` 时,为什么要制作 `apt`?

Que*_*ark 7 debian apt package-management deb

在 Debian >= 8 中,我们现在apt还有apt-get. 与apt相比如何apt-get,为什么开发人员决定创建一个新程序?

引用自Debian 管理员手册

APT 是一个庞大的项目,其原始计划包括图形界面。它基于一个包含核心应用程序的库,而 apt-get 是第一个前端——基于命令行——是在项目中开发的。apt 是 APT 提供的第二个基于命令行的前端,它克服了 apt-get 的一些设计错误。

他们在谈论什么设计错误?

Fah*_*tha 12

apt被主要用作与一些的两者的常用功能一个新的二进制apt-getapt-cache(更稍后加入,可能),并用“简化”的接口。的大部分APT可用命令行功能都通过apt-cache和公开apt-get,但从用户体验的角度来看,这些命令并不理想。由于这两个二进制文件旨在用作测试/示例命令(我相信最初由 Jason Gunthorpe 编写),而不是用于认真的最终用户使用。

apt命令旨在更易于使用,并且更“用户友好”。人们经常发现这样的困惑,功能之间的分裂apt-get,并apt-cache为实例。

请参阅 Michael Vogt 在他的博客文章中的评论: apt 1.0

我不认为它特别是为了克服设计错误。

所以,它不打算作为apt-get替代品。

有关更多信息,请尝试询问 APT 开发人员。他们非常酷,但他们不会在 Stack Exchange 上闲逛。#debian-apt改为尝试OFC。

Michael Vogt 对上述#debian-apt频道的评论;我在 IRC 频道上发布了问题链接。

<mvo> faheem:“设计错误”是一个有点强烈的词——我们只是害怕改变 apt-get 中的任何东西,因为它现在已经在无数脚本中使用了。“apt”让我们这样做,而且它更容易输入,我们可以结合 apt-get/apt-cache。所以我认为答案都很好,关键是 apt 更方便使用/输入。

<?mvo> faheem:[snip] 要点是 apt/apt-get/apt-cache 都共享相同的库和代码,只是对默认值进行了一些调整。