【问题标题】:What is the difference betwee "nuget install" , "Install-Package" and "choco install"?“nuget install”、“Install-Package”和“choco install”有什么区别?
【发布时间】:2017-06-15 19:54:45
【问题描述】:

还有更具体的问题。我是否理解正确:

  1. “nuget install”总是安装到你运行它的目录?
  2. “choco install”安装到特定的 choco 目录,然后运行脚本将其传播到系统中?
  3. “nuget install”只是 Install-Package 的包装器?

【问题讨论】:

  • 问题标题中的“安装包”在哪里?
  • 不确定我是否理解您的问题。这是 PowerShell 命令。我无法理解这与 nuget install 之间的区别。
  • 您的第 1 点和第 3 点都说“nuget install”。
  • 第三个也有安装包。

标签: windows powershell nuget chocolatey


【解决方案1】:

NuGet 是一个打包框架,可为 NuGet、PowerShell 模块(PowerShell 库)和 Chocolatey 提供打包。

PackageManagement(又名 OneGet)是一个包管理器Manager(是的,真的),它实现 Install-Package 以与 NuGet、PowerShell 等包管理器(称为提供程序)一起工作得到,还有巧克力味。

  • NuGet(工具,而非框架)用于开发目的,通常打包软件库 (dll)。
  • Chocolatey 用于软件部署和管理,通常打包软件、工具和应用程序。
  • Install-Package 是通过提供者与其中任何一个(以及更多)的接口。

注意:如果您想在 PackageManagement 中与 Chocolatey 交互(通过 Install-Package),请暂时使用 ChocolateyGet 并等待官方提供程序 Chocolatey 可用。目前是一个原型。如果您想了解更多详情,请查看https://github.com/chocolatey/chocolatey-oneget/issues/5#issuecomment-275404099

【讨论】:

  • 很棒的答案。正是我正在寻找的!谢谢!
  • 但还有一个问题:所以 nuget.exe 和 choco 实用程序依赖不同的来源,而不是在 PackageManager 中列出?
  • 不知道这些来源是否列在 PackageManager 中——我知道 Chocolatey 原型提供者没有这个功能(choco.exe 有)。使用 ChocolateyGet,您可以使用 choco.exe (choco source -?) 管理默认源。我不能代表 NuGet,但我假设提供程序将使用与 nuget.exe 未明确指定时相同的源。
【解决方案2】:

我相信 Install-package 可以充当 nuget 的包装器(基本上),但可能有其他包提供者(并且有),因此它不仅可以调用 nuget。

C:\> get-packageprovider

Name                     Version
----                     -------
msi                      3.0.0.0
msu                      3.0.0.0
NuGet                    2.8.5.207
PowerShellGet            1.0.0.1
Programs                 3.0.0.0

Choco 只是另一个包装供应商。您可以单独使用它或使用安装包。你可以用install-packageprovider chocolatey之类的东西安装choco

【讨论】:

  • 谢谢。问题的主要焦点:它们之间有什么区别。
  • 嗯,这些是不同的东西(在某种程度上)。 nuget\choco\etc 是包管理提供程序。他们之间没有真正的区别(就他们试图实现的目标而言,他们只是做的略有不同)。我不确定您希望听到什么作为答案。很明显,它们之间没有真正的区别。就像问起亚和丰田有什么区别。没有不同。他们把你从 a 点带到 b 点。
  • 我确定有。否则人们不会说“nuget 用于依赖项,choco 用于应用程序安装”。如果旧的已经解决了同样的问题,谁会发明新的东西?
  • 哦,哈哈,是的。 xkcd.com/927我不是说它们完全一样,但它们大多是一样的。
  • 对你来说会很有趣:stackoverflow.com/questions/24662550/…
猜你喜欢
  • 2019-06-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-01-27
  • 1970-01-01
相关资源
最近更新 更多