Chocolatey 的 Git 包有什么区别?

问题描述 投票:0回答:2

Chocolatey 的软件包存储库 显示了两个用于安装 Git 的流行软件包:

这两个套餐有什么区别?如何决定是否使用:

choco install git

或:

choco install git.install

其中一个是另一个的超集吗?

chocolatey
2个回答
27
投票

根据此论坛帖子

.install
后缀是可发现性的产物。只需使用较短的名称:

choco install git

14
投票

直接从他们的常见问题解答页面:

无后缀的包和*.install *.portable有什么区别?

名为 *.install(即 autohotkey.install)、*.portable(即 autohotkey.portable)和 *(即 autohotkey)的软件包有什么区别?

tl;dr:几乎 100% 的情况下,没有后缀的软件包(本例中为 autohotkey)将确保 *.install。不带后缀的包既是为了可发现性,也是为了让其他包可以依赖。

嘿,好问题!你注意了! Chocolatey 有虚拟包(即将推出,请参阅 GitHub Issue)和元包的概念。虚拟包是用作依赖项时代表其他包的包。元包是仅提供一组依赖项而存在的包。

一个没有后缀的包被有后缀的包包围就是提供一个虚拟包。因此,对于 git、git.install 和 git.commandline(不推荐使用 .portable)来说,git 就是那个虚拟包(目前它实际上只是一个元包,直到虚拟包功能完成为止)。这意味着其他软件包可能依赖于它,并且您可以安装 git.install 或 git.portable,并且您将满足安装 git 的依赖关系。这使得 Chocolatey 无法尝试安装已经满足包依赖关系要求的东西。

具体讨论 *.install 软件包后缀 - 这些后缀适用于具有捆绑或下载并运行的本机安装程序的软件包。

注意

后缀 *.app 之前已使用,其含义与 *.install 相同。但 *.app 后缀现已弃用,不应用于新软件包。

*.portable 软件包通常会在您的路径上的某个位置生成可执行文件,但不会安装到系统上(添加/删除程序)。以前,后缀 *.tool 和 *.commandline 用于指代相同类型的软件包。

注意

现在 *.tool 和 *.commandline 已弃用,不应用于新软件包。

想要了解更多信息?请参阅http://ferventcoder.com/archive/2012/02/25/chocolatey---guidance-on-packaging-apps-with-both-an-install.aspx

© www.soinside.com 2019 - 2024. All rights reserved.