背景
-
.NET核心客户端(例如,
dotnet restore
,
dotnet build
)
-
SDK样式的项目文件(例如,
<Project Sdk="Microsoft.NET.Sdk">
)
-
依赖于我通过nuget服务器发布的包的应用程序项目。
-
我的包的语义版本控制(例如,
1.6.10
,是版本
1.6.9
,具有向后兼容的修复程序)
-
应用程序中带有修补程序占位符的项目包引用(例如,
1.6.*
)
-
nuget.config文件(包含包文件夹路径和nuget源列表)。
我的应用程序项目文件可能包含以下内容:
<PackageReference Include="MyDataAccessLibrary" Version="1.6.*" />
问题是:
当我将包的新版本发布到nuget服务器时,运行
Dotnet还原
在我的开发机器上没有下载那个新版本(如果我已经根据以前的版本进行构建的话)。
例如,如果我一直在针对包版本1.6.9构建,我希望
Dotnet还原
将检测最近发布的1.6.10,安装它,并在构建我的依赖应用程序时使用它。这不是我在开发机器上的经验。(在构建服务器上,它工作正常,因为它为每个构建都获得一个干净的副本。)
以下是我在我的dev机器上作为一个变通方法所做的工作:
-
编辑项目文件,替换
1.6、*
具有
1.6
.
-
跑
Dotnet还原
-
观看下载的新软件包版本
-
编辑项目文件,恢复
1.6
返回
1.6、*
问题:
在上述情况下,“请下载软件包的最新补丁”的正确表达方式是什么?