Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Last revisionBoth sides next revision
ms_windows_ms_sql:nuget_replace_package_with_same_version [2022/01/10 09:37] – created adminms_windows_ms_sql:nuget_replace_package_with_same_version [2022/01/10 09:40] – [Решение] admin
Line 6: Line 6:
 Строго говоря - серверы Nuget не разрешают заменять уже загруженные версии пакетов, а предполагает, что исправленные пакеты будут заливаться с новыми версиями - https://docs.microsoft.com/en-us/azure/devops/artifacts/artifacts-key-concepts?view=azure-devops \\ Строго говоря - серверы Nuget не разрешают заменять уже загруженные версии пакетов, а предполагает, что исправленные пакеты будут заливаться с новыми версиями - https://docs.microsoft.com/en-us/azure/devops/artifacts/artifacts-key-concepts?view=azure-devops \\
 Даже если пакет был удален с помощью nuget delete - он будет все равно доступен для скачивания, хотя и не будет отображаться в интерфейсе. \\ Даже если пакет был удален с помощью nuget delete - он будет все равно доступен для скачивания, хотя и не будет отображаться в интерфейсе. \\
-Однако, есть хирургический способ обойти это ограничение - удалить плохую версию пакета в БД сервера Nuget. \\+Однако, есть [[https://stackoverflow.com/a/21933415|хирургический способ обойти это ограничение]] - удалить пакет (все его версии) в БД сервера Nuget. \\ 
 +<code>DECLARE @PackageRegistrationKey int 
 +SELECT @PackageRegistrationKey = [Key] 
 + FROM PackageRegistrations 
 + WHERE Id = 'MyNastyPackage' 
 + 
 +BEGIN TRANSACTION 
 +DELETE pf 
 + FROM [NuGetGallery].[dbo].[PackageFrameworks] pf 
 + JOIN Packages p ON pf.Package_Key = p.[Key] 
 + WHERE PackageRegistrationKey = @PackageRegistrationKey 
 +DELETE pa 
 + FROM [NuGetGallery].[dbo].[PackageAuthors] pa 
 + JOIN Packages p ON pa.PackageKey = p.[Key] 
 + WHERE PackageRegistrationKey = @PackageRegistrationKey 
 +DELETE gs 
 + FROM [NuGetGallery].[dbo].[GallerySettings] gs 
 + JOIN [PackageStatistics] ps ON gs.DownloadStatsLastAggregatedId = ps.[Key] 
 + JOIN Packages p ON ps.PackageKey = p.[Key] 
 + WHERE PackageRegistrationKey = @PackageRegistrationKey 
 +DELETE ps 
 + FROM [NuGetGallery].[dbo].[PackageStatistics] ps 
 + JOIN Packages p ON ps.PackageKey = p.[Key] 
 + WHERE PackageRegistrationKey = @PackageRegistrationKey 
 +DELETE pd 
 + FROM [NuGetGallery].[dbo].[PackageDependencies] pd 
 + JOIN Packages p ON pd.PackageKey = p.[Key] 
 + WHERE PackageRegistrationKey = @PackageRegistrationKey 
 +DELETE 
 + FROM [NuGetGallery].[dbo].[Packages] 
 + WHERE PackageRegistrationKey = @PackageRegistrationKey 
 +DELETE por 
 + FROM PackageOwnerRequests por 
 + JOIN PackageRegistrations pr ON pr.[Key] = por.PackageRegistrationKey 
 + WHERE pr.[Key] = @PackageRegistrationKey 
 +DELETE pro 
 + FROM PackageRegistrationOwners pro 
 + JOIN PackageRegistrations pr ON pr.[Key] = pro.PackageRegistrationKey 
 + WHERE pr.[Key] = @PackageRegistrationKey 
 +DELETE FROM PackageRegistrations 
 + WHERE [Key] = @PackageRegistrationKey 
 +COMMIT TRANSACTION</code>
  
  
  • ms_windows_ms_sql/nuget_replace_package_with_same_version.txt
  • Last modified: 2022/01/10 09:46
  • by admin