TFS 2017 - Nuget 提要 - 恢复采用最后一个包版本之前的延迟

TFS 2017 - Nuget feed - Delay before restore take last package version

我正在使用带有 nuget 提要的 TFS 2017。

我在提要中发布了我的包的新(非预发布)版本后,比方说 My.Package Version 1.0.1,我需要等待大约 30 分钟才能恢复引用已发布包的项目。

否则,即使我在 TFS Nuget Feed UI 中看到 version 1.0.1dotnet restore 使用 .net 核心 CLI(甚至使用 --force 选项)忽略新版本并采用最新的预发布版本 例如 My.Package Version 1.0.1-2019041501

csproj 包参考包括预发布版本的通配符。

<PackageReference Include="My.Package" Version="1.0.1-*" />

同样的事情也发生在两个预发布版本之间,但只延迟了 5 分钟。比如我发布My.Package Version 1.0.1-2019041502后,需要等5分钟,否则恢复需要My.Package Version 1.0.1-2019041501.

Nuget 包项目使用 .Net Standard 2.0.3,引用项目使用 .Net Core 2.2。

延迟的原因是什么?

谢谢。

NuGet 保留一个 HTTP 缓存,用于加速对 HTTP 源的相同查询,缓存周期为 30 分钟。您可以使用 nuget.exe locals http-cache -clear or dotnet nuget locals http-cache --clear 清除它。不过,我无法解释预发布包的 5 分钟延迟。 TFS 是否有可能在推送后花费 5 分钟来摄取包并使其在其提要搜索结果中可用?我不相信 NuGet 在您请求预发布包时会更快地过期其 http 缓存,但这听起来可行。