编辑NuGet包中的nuspec文件

3

我希望在TFS的CI流程完成后创建一个语义化版本的nupkg文件。该nupkg文件应如下所示。

MSVersioningSample.1.0.7-ci-20170926-184446.nupkg

但是,当我决定将其发布为正式版本时,我想将nupgk重命名并作为正式版本重新发布到nuget feed中。

MSVersioningSample.1.0.7.nupkg

当我重命名nupkg文件并发布它时,其版本号仍然保持不变,导致发布时发生冲突。

然后,我意识到,在nupkg文件中有一个.nuspec文件,我必须在其中更改版本号。

我的问题是,如何用(powershell)脚本编辑nupkg中的nuspec文件?

1个回答

1
似乎您想使用预发布版本的nupkg,但在准备发布时删除预发布。您必须重新编写nuspec文件中的<version>元素。但是要处理所有情况并不容易,例如,如果您的构建生成了多个包,其中一些依赖于彼此怎么办?现在您还需要发现依赖关系图并重写相应的元素。
要更新“*.nuspec”文件中的版本字段,您可以在GitHub中引用此PowerShell脚本:Nuspec Auto Update 另一个解决方法是将两个NuGet打包步骤添加到构建过程中。一个带有-ci编号,另一个没有。
然后,您只需确保仅复制已经没有预发布段的“release”包到ArtifactStagingDirectory中。
还要设置您的发布,以使其使用构建号作为发布名称。一个小问题是这包括-ci编号。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接