NuGet Pack,GitVersionTask,以及针对多个框架版本

时间:2017-02-21 18:57:17

标签: .net nuget gitversion

通常,当使用GitVersion和GitVersionTask(自动生成.NET Assembly程序版本,如AssemblyInformationalVersion)时,我将通过对nuget pack文件运行.csproj命令生成NuGet包,一个.nuspec文件旁边。这允许我使用全套的nuspec replacement tokens,就像$ version $一样,然后从GitVersion生成的AssemblyInformationalVersion获取它的值,从而无需在任何地方硬编码。

但是,在某些情况下,我想生成针对多个框架版本的NuGet包(然后进入/ lib下的子文件夹,例如net40,net45等)。我通常会使用单独的项目(每个项目都针对单个框架版本)执行此操作,并将源文件添加为每个项目的链接。但这意味着nuget pack会有多个.csproj文件要处理,据我所知,NuGet没有任何"追加"将添加到现有nupkg存档的模式。那就意味着我需要对.nuspec directly进行nuget pack,这会剥夺我使用替换令牌的能力。

因此,如果我希望能够使用GitVersion自动生成程序集版本,定位多个框架版本,可以利用替换令牌,例如$版本$以避免硬编码,我该怎么办?

0 个答案:

没有答案