TeamCity更改了csproj文件中的路径

本文关键字:路径 文件 csproj TeamCity | 更新日期: 2023-09-27 18:18:33

TeamCity正在更改我的csproj文件中某些nuget包的hintpath属性。因此,它正在为特定的nuget包恢复错误的版本,并且我在CI服务器上得到构建错误。其他一切都很好,即使我自己拉出repo并重新构建和恢复。

下面是我在git中的文件:

<Reference Include="SimpleInjector, Version=3.2.3.0, Culture=neutral, PublicKeyToken=984cb50dea722e99, processorArchitecture=MSIL">
  <HintPath>..'packages'SimpleInjector.3.2.3'lib'net45'SimpleInjector.dll</HintPath>
  <Private>True</Private>
</Reference>
<Reference Include="SimpleInjector.Packaging, Version=3.2.3.0, Culture=neutral, PublicKeyToken=984cb50dea722e99, processorArchitecture=MSIL">
  <HintPath>..'packages'SimpleInjector.Packaging.3.2.3'lib'net40-client'SimpleInjector.Packaging.dll</HintPath>
  <Private>True</Private>
</Reference>

在TeamCity中是这样说的:

<Reference Include="SimpleInjector">
  <HintPath>..'packages'SimpleInjector.3.2.7'lib'net45'SimpleInjector.dll</HintPath>
</Reference>
<Reference Include="SimpleInjector.Packaging">
  <HintPath>..'packages'SimpleInjector.Packaging.3.2.7'lib'net40-client'SimpleInjector.Packaging.dll</HintPath>
</Reference>

我不知道为什么会发生这种情况,也不知道如何预防。有人有这个问题的经验,或者知道我可以改变一个项目设置来防止它吗?

TeamCity更改了csproj文件中的路径

问题是构建配置被设置为在nuget恢复构建步骤中更新nuget包。我假设只有缓存的nuget包会在包。Config与本地包不同,但事实并非如此。如果有机会,TeamCity将始终更新到最新的稳定的nuget包,并且该标志设置为true。