Exclusão de pacote e suporte de restauração em GitHub
Em GitHub se você tiver o acesso necessário, você poderá excluir:
- um pacote privado inteiro
- um pacote público inteiro, se não houver mais de 25 downloads de qualquer versão do pacote
- uma versão específica de um pacote privado
- uma versão específica de um pacote público, se a versão do pacote não tiver mais de 25 downloads
Observação:
- Você não pode excluir um pacote público se uma versão do pacote tiver mais de 25 downloads. Neste caso, entre em contato com o suporte do GitHub para obter mais assistência.
- Ao excluir pacotes públicos, esteja ciente de que você pode quebrar projetos que dependem do seu pacote.
Em GitHub, você também pode restaurar um pacote inteiro ou uma versão do pacote, se:
- Você restaurar o pacote dentro de 30 dias após a exclusão.
- O mesmo namespace do pacote ainda estiver disponível e não for usado para um novo pacote.
Suporte de API de pacotes
Você pode usar a API REST para gerenciar seus pacotes. Para obter mais informações, consulte o "API de GitHub Package Registry".
For packages that inherit their permissions and access from repositories, you can use GraphQL to delete a specific package version. The GitHub Package Registry GraphQL API does not support containers or Docker images that use the package namespace https://ghcr.io/OWNER/PACKAGE-NAME. Para obter mais informações sobre o suporte do GraphQL, consulte "Excluir uma versão de um pacote com escopo de repositório com GraphQL".
Observação: O Container registry está atualmente em beta público e está sujeito a alterações. Durante o beta, o armazenamento e a banda larga são grátis. To use the Container registry, you must enable the feature preview. For more information, see "Introduction to GitHub Package Registry" and "Enabling improved container support with the Container registry."
Permissões necessárias para excluir ou restaurar um pacote
Para pacotes que herdam as permissões de acesso dos repositórios, é possível excluir um pacote se você tiver permissões de administrador para o repositório.
Repository-scoped packages on GitHub Package Registry include these packages:
- npm
- RubyGems
- maven
- Gradle
- NuGet
- Imagens Docker em
docker.pkg.github.com/OWNER/REPOSITORY/IMAGE-NAME
Para excluir um pacote que tem permissões granulares separadas de um repositório, como contêineres ou imagens Docker armazenadas em https://ghcr.io/OWNER/PACKAGE-NAME, você deve ter acesso de administrador ao pacote.
Observação: O Container registry está atualmente em beta público e está sujeito a alterações. Durante o beta, o armazenamento e a banda larga são grátis. To use the Container registry, you must enable the feature preview. For more information, see "Introduction to GitHub Package Registry" and "Enabling improved container support with the Container registry."
Automatize a exclusão de versão de pacote com GitHub Actions
Você pode automatizar a exclusão de versão do pacote usando uma ação oficial criada por GitHub. Esta ação está disponível no repositório de ações ou em GitHub Marketplace e funciona somente com pacotes com escopo do repositório. Para obter mais informações, consulte a ação "Excluir versões do pacote" em GitHub Marketplace ou no repositório de ações.
Excluir a versão de um pacote
Excluir uma versão de um pacote com escopo de repositório em GitHub
Para excluir uma versão de um pacote com escopo do repositório, você deve ter permissões de administrador para o repositório ao qual o pacote pertence. Para obter mais informações, consulte "Permissões necessárias".
-
No GitHub, navegue até a página principal do repositório.
-
À direita da lista de arquivos, clique em Packages (Pacotes).

-
Procurar e selecionar o seu pacote.
-
In the top right of your package's landing page, click Package settings.

-
À esquerda, clique em Gerenciar versões.
-
À direita da versão que você deseja excluir, clique em e selecione Excluir versão.

-
Para confirmar a exclusão, digite o nome do pacote e clique em Eu entendo as consequências. Exclua esta versão.

Excluir uma versão de um pacote com escopo do repositório com o GraphQL
Para pacotes que herdam suas permissões e acesso dos repositórios, você pode usar o GraphQL para excluir uma versão específica de pacotes.
O GraphQL não é compatível com contêineres ou imagens Docker em ghcr.io.
Use a mutação deletePackageVersion na API do GraphQL. Você deve usar um token com os escopos read:packages, delete:packages e repo. For more information about tokens, see "About GitHub Package Registry."
O exemplo a seguir demonstra como excluir uma versão do pacote, usando um packageVersionId de MDIyOlJlZ2lzdHJ5UGFja2FnZVZlcnNpb243MTExNg.
curl -X POST \
-H "Accept: application/vnd.github.package-deletes-preview+json" \
-H "Authorization: bearer TOKEN" \
-d '{"query":"mutation { deletePackageVersion(input:{packageVersionId:\"MDIyOlJlZ2lzdHJ5UGFja2FnZVZlcnNpb243MTExNg==\"}) { success }}"}' \
HOSTNAME/graphql
To find all of the private packages you have published to GitHub Package Registry, along with the version IDs for the packages, you can use the registryPackagesForQuery connection. Você vai precisar de um token com os escopos read:packages e repo. You will need a token with the read:packages and repo scopes.
Para obter mais informações sobre a mutação deletePackageVersion, consulte "deletePackageVersion".
Você não pode excluir diretamente um pacote inteiro usando o GraphQL, mas se você excluir todas as versões de um pacote, o pacote não será mostrado em GitHub.
Excluindo uma versão de pacote com escopo do usuário em GitHub
Para excluir uma versão específica de um pacote com escopo de usuário em GitHub, como para uma imagem Docker em ghcr. o, siga estas etapas. Para excluir um pacote inteiro, consulte "Excluir todo um pacote com escopo do usuário em GitHub".
Observação: O Container registry está atualmente em beta público e está sujeito a alterações. Durante o beta, o armazenamento e a banda larga são grátis. To use the Container registry, you must enable the feature preview. For more information, see "Introduction to GitHub Package Registry" and "Enabling improved container support with the Container registry."
Para revisar quem pode excluir uma versão de pacote, consulte "Permissões necessárias".
- Em GitHub, acesse a página principal da sua conta de usuário.
- No canto superior direito de GitHub, clique na sua foto de perfil e, em seguida, clique em Seu perfil.

- Na sua página de perfil, no canto superior direito, clique em Pacotes.

- Procurar e selecionar o seu pacote.
- In the top right of your package's landing page, click Package settings.

- À esquerda, clique em Gerenciar versões.
- À direita da versão que você deseja excluir, clique em e selecione Excluir versão.

- Para confirmar a exclusão, digite o nome do pacote e clique em Eu entendo as consequências. Exclua esta versão.

Excluir uma versão de um pacote com escopo da organização no GitHub
To delete a specific version of an organization-scoped package on GitHub, such as for a Docker image at ghcr.io, use these steps. To delete an entire package, see "Deleting an entire organization-scoped package on GitHub."
Observação: O Container registry está atualmente em beta público e está sujeito a alterações. Durante o beta, o armazenamento e a banda larga são grátis. To use the Container registry, you must enable the feature preview. For more information, see "Introduction to GitHub Package Registry" and "Enabling improved container support with the Container registry."
Para revisar quem pode excluir uma versão de pacote, consulte "Permissões necessárias".
- Em GitHub, acesse a página principal da sua organização.
- No nome da sua organização, clique em Pacotes.

- Procurar e selecionar o seu pacote.
- In the top right of your package's landing page, click Package settings.

- À esquerda, clique em Gerenciar versões.
- À direita da versão que você deseja excluir, clique em e selecione Excluir versão.

- Para confirmar a exclusão, digite o nome do pacote e clique em Eu entendo as consequências. Exclua esta versão.

Deleting an entire package
Deleting an entire repository-scoped package on GitHub
To delete an entire repository-scoped package, you must have admin permissions to the repository that owns the package. Para obter mais informações, consulte "Permissões necessárias".
-
No GitHub, navegue até a página principal do repositório.
-
À direita da lista de arquivos, clique em Packages (Pacotes).

-
Procurar e selecionar o seu pacote.
-
In the top right of your package's landing page, click Package settings.

-
Under "Danger Zone", click Delete this package.
-
To confirm, review the confirmation message, enter your package name, and click I understand, delete this package.

Deleting an entire user-scoped package on GitHub
To review who can delete a package, see "Required permissions."
- Em GitHub, acesse a página principal da sua conta de usuário.
- No canto superior direito de GitHub, clique na sua foto de perfil e, em seguida, clique em Seu perfil.

- Na sua página de perfil, no canto superior direito, clique em Pacotes.

- Procurar e selecionar o seu pacote.
- In the top right of your package's landing page, click Package settings.

- À esquerda, clique em Opções.

- Em "Zona de Perigo" clique em Excluir este pacote.

- Para confirmar a exclusão, digite o nome do pacote e clique em Eu entendo as consequências. Exclua este pacote.

Deleting an entire organization-scoped package on GitHub
To review who can delete a package, see "Required permissions."
- Em GitHub, acesse a página principal da sua organização.
- No nome da sua organização, clique em Pacotes.

- Procurar e selecionar o seu pacote.
- In the top right of your package's landing page, click Package settings.

- À esquerda, clique em Opções.

- Em "Zona de Perigo" clique em Excluir este pacote.

- Para confirmar a exclusão, digite o nome do pacote e clique em Eu entendo as consequências. Exclua este pacote.

Restoring packages
You can restore a deleted package or version if:
- Você restaurar o pacote dentro de 30 dias após a exclusão.
- The same package namespace and version is still available and not reused for a new package.
For example, if you have a deleted rubygem package named octo-package that was scoped to the repo octo-repo-owner/octo-repo, then you can only restore the package if the package namespace rubygem.pkg.github.com/octo-repo-owner/octo-repo/octo-package is still available, and 30 days have not yet passed.
You must also meet one of these permission requirements:
- For repository-scoped packages: You have admin permissions to the repository that owns the deleted package.
- For user-account scoped packages: Your user account owns the deleted package.
- For organization-scoped packages: You have admin permissions to the deleted package in the organization that owns the package.
Para obter mais informações, consulte "Permissões necessárias".
Once the package is restored, the package will use the same namespace it did before. If the same package namespace is not available, you will not be able to restore your package. In this scenario, to restore the deleted package, you must delete the new package that uses the deleted package's namespace first.
Restoring a package in an organization
You can restore a deleted package through your organization account settings, as long as the package was in one of your repositories or had granular permissions and was scoped to your organization account.
To review who can restore a package in an organization, see "Required permissions."
- No GitHub, navegue para a página principal da organização.
- No nome da sua organização, clique em Settings.

- À esquerda, clique em Pacotes.
- Under "Deleted Packages", next to the package you want to restore, click Restore.

- To confirm, type the name of the package and click I understand the consequences, restore this package.

Restoring a user-account scoped package
You can restore a deleted package through your user account settings, if the package was in one of your repositories or scoped to your user account. Para obter mais informações, consulte "Permissões necessárias".
- No canto superior direito de qualquer página, clique na sua foto de perfil e, em seguida, clique em Configurações.

- À esquerda, clique em Pacotes.
- Under "Deleted Packages", next to the package you want to restore, click Restore.

- To confirm, type the name of the package and click I understand the consequences, restore this package.

Restoring a package version
You can restore a package version from your package's landing page. To review who can restore a package, see "Required permissions."
- Navigate to your package's landing page.
- On the right, click Package settings.
- À esquerda, clique em Gerenciar versões.
- On the top right, use the "Versions" drop-down menu and select Deleted.

- Next to the deleted package version you want to restore, click Restore.

- To confirm, click I understand the consequences, restore this version.
