重新标记/重新版本已发布的 nuget 包

问题描述 投票:0回答:1

一旦处于发布候选版本(例如 4.5.0-RC)状态的已发布 nuget 包通过了所有验证测试,我们希望将其版本更改为 v.4.5.0 等发布版本,而无需从源代码。

它的 RC 版本,是这样创建的:

dotnet publish -c Release -o out --no-restore
dotnet pack --configuration Release --no-build --output nupkgs \p:PackageVersion=4.5.0-RC
dotnet nuget push nupkgs/org.package_one.4.5.0-RC.nupkg --api-key xxx --source "github"

那么,有什么办法

  1. 拉它
  2. 更改版本和标签
  3. 将其推送到远程注册表
.net nuget nuget-package
1个回答
0
投票

所以这就是我最终设法做的:

Step 1 - ADD SOURCES
dotnet nuget add source -u <username> -p <pat> --store-password-in-clear-text --name github "https://nuget.pkg.github.com/<org>/index.json"

nuget sources add -Name "github" -Source "https://nuget.pkg.github.com/<org>/index.json" -username "<username>" -password "<pat>"

Step 2 - DOWNLOAD THE PACKAGE
nuget install <package-name> -OutputDirectory ./download -Version "1.0.1-1.1.0-rc-1" -Source https://nuget.pkg.github.com/<org>/index.json -DependencyVersion Ignore

Step 3 - CHANGE DIR
cd ./download/<package-name>.1.0.1-1.1.0-rc-1

Step 4 - UNZIP IT INTO A DIR
unzip <package-name>.nupkg -d repackage

Step 5 - MAKE IT EDITABLE
chmod 777 repackage/<package-name>.nuspec

STEP 6 - CHANGE THE VERSION
sed -i -e 's/\(<version>\).*\(<\/version>\)/<version>1.0.1-1.1.0<\/version>/g' repackage/<package-name>.nuspec

STEP - 7 REVERT PERMISSIONS CHANGES
chmod 000 repackage/<package-name>.nuspec

STEP - 8 ZIP IT BACK
zip -r -j <package-name>.1.0.1-1.1.0.nupkg repackage/*

STEP - 9 PUSH THE NEW PACKAGE
dotnet nuget push <package-name>.1.0.1-1.1.0.nupkg --source "github" --api-key <pat>
© www.soinside.com 2019 - 2024. All rights reserved.