答案1
这两个包并不完全相同,实际上彼此有很大不同。
以下是该帖子的答案 什么是 Chocolatey“安装”包?
请查看 Chocolatey wiki 中的常见问题解答:
引用该文章:
总结:几乎 100% 的情况下,没有后缀的包(本例中为 autohotkey)将确保 *.install。没有后缀的包既是为了可发现性,也是为了其他包的依赖性。
Chocolatey 有虚拟包(即将推出)和元包的概念。虚拟包是用作依赖项时代表其他包的包。元包是仅用于提供一组依赖项的包。
一个没有后缀的包被带有后缀的包包围,就是提供一个虚拟包。因此,在 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