NuGet 包源优先级

标签 nuget

如果您的 NuGet.config 中有多个 packageSources:

<packageSources>
  <clear />
  <add key="dev" value="http://server2/branches/feature1/nuget" />
  <add key="release" value="http://server1/nuget" />
</packageSources>

运行 nuget install 等时是否使用了 XML 中的顺序?如果我在两个版本中都有 1.0.0-SNAPSHOT 版本的 packageA,那么 feature1 分支上的开发 channel 版本会赢吗?

最佳答案

nuget.config 中提要的顺序决定了它们在从 Visual Studio 到 NuGet 的各种 View 的下拉菜单中显示的顺序。在所有情况下,您都可以选择从哪个源进行安装。请参阅下面的屏幕截图。

Visual Studio 不会跟踪包的来源,因此包 ID 实际上位于全局命名空间中,您必须知道它属于哪个源。 Visual Studio 将向您显示所选提要中具有匹配 ID 的任何包,因此您可能会用另一个提要中的另一个提要覆盖从一个提要安装的包。

对于我在公司管理的 NuGet 提要,我在内部包前面加上 <CompanyName>.以减少现在和将来发生命名冲突的风险。

enter image description here

enter image description here

关于NuGet 包源优先级,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36470532/

相关文章:

防火墙后的 NuGet

nuget - 创建包含多个 DLL 的 nuget 包

c# - Microsoft NuGet 包发行说明

c# - 使用Nuget时有没有简单的方法可以关闭包含多语言包?

azure-devops - 获取不允许将 NuGet 发布到 VSTS/ADO 的 405 方法

c# - 如何调试我创建的 NuGet 包中的代码

c# - 语义版本控制和依赖性更改

.net-core - 如何更新 dotnet cli 使用的 nuget.exe 版本

nuget - 在 GitHub Packages 上列出 nuget 包

asp.net-mvc - jQuery Validation 和 Microsoft jQuery Unobtrusive 之间的区别