Nuget 保持packages.config和nuspec同步

Nuget 保持packages.config和nuspec同步,nuget,Nuget,每次更新包时,我都会手动修改.nuspec文件。有没有一种自动的方法?我不希望创建一个额外的构建步骤来比较两个文件并同步它们 我相信MyGet可以实现这个OOB,但不幸的是,我不能将MyGet用于这个特定的包 (FWIW,我正在使用VS2015和Xamarin Studio)只需针对csproj调用nuget pack,而不是nuspec,例如: nuget pack X.csproj 此外,您必须从nuspec中删除依赖项,否则nuget将从那里而不是从packages.config中获取依赖

每次更新包时,我都会手动修改.nuspec文件。有没有一种自动的方法?我不希望创建一个额外的构建步骤来比较两个文件并同步它们

我相信MyGet可以实现这个OOB,但不幸的是,我不能将MyGet用于这个特定的包


(FWIW,我正在使用VS2015和Xamarin Studio)

只需针对
csproj
调用
nuget pack
,而不是
nuspec
,例如:

nuget pack X.csproj

此外,您必须从
nuspec
中删除依赖项,否则nuget将从那里而不是从
packages.config
中获取依赖项

顺便说一句,检查创建的
nupkg
。它可能会添加一些不需要的文件,例如,
txt
文件,如果您的项目中碰巧有这些文件的话

如果是这种情况,则必须使用
-Exclude
参数调用
nuget-pack


nuget pack X.csproj-Exclude**.txt
只需针对
csproj
调用
nuget pack
,而不是
nuspec
,例如:

nuget pack X.csproj

此外,您必须从
nuspec
中删除依赖项,否则nuget将从那里而不是从
packages.config
中获取依赖项

顺便说一句,检查创建的
nupkg
。它可能会添加一些不需要的文件,例如,
txt
文件,如果您的项目中碰巧有这些文件的话

如果是这种情况,则必须使用
-Exclude
参数调用
nuget-pack


nuget pack X.csproj-Exclude**.txt

我最终创建了一个快速C#脚本(LINQPad规则),该脚本使用XDocument、nuget.Core和LINQ同步.config和.nuspec。如果有人感兴趣,我将把它作为一个要点发布。

我最终创建了一个快速的C#脚本(LINQPad规则),使用XDocument、NuGet.Core和LINQ同步.config和.nuspec。如果有人感兴趣,我会将其作为要点发布。

这在多目标时有效吗?ie,我有一个用于PCL的csproj,另一个用于Xamarin.iOS,另一个用于Xamarin.Droid-所有这些都使用相同的结果。根据目标配置文件,您的依赖关系是否不同?我恐怕无法帮助您:(我认为您必须求助于构建步骤或类似的步骤。这在多目标时有效吗?即,我有一个用于PCL的csproj,另一个用于Xamarin.iOS,另一个用于Xamarin.Droid-所有这些都使用相同的结果。PackageGear根据目标配置文件的不同,确定您的依赖关系是否不同?我恐怕无法帮助您:(我认为您必须求助于构建步骤或类似的方法。