我已经设置了一个AfterBuild目标,以便在有Release版本时将Nuget打包文件复制到我们的内部Nuget库中。很好。
我想做的是在构建调试版本时,通过在名称中的版本号后添加-beta来重命名Nuget包。如何在MSBuild中动态重命名文件?
我当前的目标脚本:
<Target Name="AfterBuild" >
<ItemGroup>
<BetaNugetFile Include="$(OutputPath)$(TargetName).*.nupkg" />
<NewNugetFile Include="$(OutputPath)$(TargetName).*.nupkg" />
</ItemGroup>
<Copy SourceFiles="@(NewNugetFile)" DestinationFolder="\\Server1\private\ITDev\Apps\NugetPackages" Condition="'$(Configuration)'=='Release'"/>
<Copy SourceFiles="@(BetaNugetFile)" DestinationFolder="\\Server1\private\ITDev\Apps\NugetPackages\beta" Condition="'$(Configuration)'=='Debug'"/>
</Target>
此脚本将程序包推送到beta目录,但是我想重命名并将其放在主库中而不是子文件夹中。
这可能吗?
答案 0 :(得分:2)
关键是使用DestinationFiles代替DestinationFolder
<Copy SourceFiles="@(BetaNugetFile)" DestinationFiles="\\Server1\private\ITDev\Apps\NugetPackages\%(Filename)-beta%(Extension)" Condition="'$(Configuration)'=='Debug'"/>