Skip to main content
ドキュメントへの更新が頻繁に発行されており、このページの翻訳はまだ行われている場合があります。 最新の情報については、「英語のドキュメント」を参照してください。

パッケージを削除および復元する

パッケージの削除と復元の方法を学びます。

GitHubにおけるパッケージの削除および復元のサポート

GitHubでは、必要なアクセス権がある場合、以下を削除できます。

  • プライベートパッケージ全体
  • パッケージの全バージョンでダウンロード数が 5000 以下の場合、パブリック パッケージ全体
  • プライベートパッケージの特定のバージョン
  • パッケージ バージョンのダウンロード数が 5,000 以下の場合、パブリック パッケージの特定のバージョン

注:

  • パッケージのいずれかのパージョンでダウンロード数が 5,000 を超えている場合は、パブリック パッケージを削除できません。 この場合は、GitHub サポートまでお問い合わせください。
  • パブリックパッケージを削除する場合、そのパッケージに依存するプロジェクトを破壊する可能性があることに注意してください。

GitHubでは、以下の場合にパッケージ全体またはパッケージバージョンを復元できます。

  • 削除後30日以内にパッケージを復元する。
  • 同じパッケージ名前空間が現在も使用可能であり、新しいパッケージに使用されていない場合。

パッケージAPIのサポート

特定のレジストリでは、GraphQL を使ってプライベート パッケージのバージョンを削除することができます。

詳細なアクセス許可をサポートするレジストリとともに GitHub Packages GraphQL API を使うことはできません。 リポジトリがスコープされたアクセス許可のみをサポートし、GraphQL API で使用できるレジストリについては、「GitHub Packages のアクセス許可について」をご覧ください。

パッケージの削除や復元に必要な権限

詳細なアクセス許可をサポートするレジストリでは、パッケージをユーザーまたは組織にスコープ指定するか、リポジトリにリンクすることを許可できます。

https://containers.HOSTNAME/OWNER/PACKAGE-NAMEに保存されているコンテナー イメージなど、リポジトリとは別の詳細なアクセス許可を持つパッケージを削除するには、パッケージへの管理者アクセス権が必要です。 詳細については、「GitHub Packages のアクセス許可について」を参照してください。

リポジトリからアクセス許可を継承するパッケージの場合、リポジトリに対する管理者アクセス許可があれば、パッケージを削除できます。

一部のレジストリは、リポジトリがスコープ指定されたパッケージのみをサポートします。 そのようなレジストリの一覧については、「GitHub Packages のアクセス許可について」をご覧ください。

パッケージのバージョンを削除する

GitHub 上のリポジトリがスコープ指定されたパッケージのバージョンを削除する

リポジトリがスコープ指定されたパッケージのバージョンを削除するには、パッケージを所有するリポジトリに対する管理者アクセス許可が必要です。 詳細については、「必要なアクセス許可」を参照してください。

  1. your GitHub Enterprise Server instance で、リポジトリのメイン ページへ移動します。 1. ファイルの一覧の右側にある [パッケージ] をクリックします。 リポジトリの概要ページの [パッケージ] リンク 3. パッケージを検索して選択してください。
  2. パッケージのランディング ページの右上にある [パッケージ設定] をクリックします。 [パッケージ設定] ボタン
  3. 左側の [バージョンの管理] をクリックします。
  4. 削除するバージョンの右側で、 をクリックした後、 [バージョンの削除] を選択します。 パッケージ バージョンの削除ボタン
  5. 削除を確認するために、パッケージ名を入力し、 I understand the consequences, delete this version をクリックします。 パッケージの削除の確認ボタン

GraphQL を使用してリポジトリがスコープ指定されたパッケージのバージョンを削除する

特定のレジストリでは、GraphQL を使ってプライベート パッケージのバージョンを削除することができます。

詳細なアクセス許可をサポートするレジストリとともに GitHub Packages GraphQL API を使うことはできません。 リポジトリがスコープされたアクセス許可のみをサポートし、GraphQL API で使用できるレジストリについては、「GitHub Packages のアクセス許可について」をご覧ください。

GraphQL API の deletePackageVersion ミューテーションを使ってください。 read:packagesdelete:packagesrepo のスコープとともに personal access token を使う必要があります。 personal access tokens について詳しくは、「GitHub Packages について」をご覧ください。

以下の例では、MDIyOlJlZ2lzdHJ5UGFja2FnZVZlcnNpb243MTExNgpackageVersionId を使用して、パッケージ バージョンを削除する方法を示します。

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

GitHub Packages に公開したすべてのプライベート パッケージをバージョン ID と併せて見つけるには、repository オブジェクトを通じて packages コネクションを使うことができます。 read:packagesrepo スコープを含む personal access token が必要になります。 詳細については、packages コネクションまたは PackageOwner インターフェイスを参照してください。

deletePackageVersion ミューテーションの詳細については、「deletePackageVersion」を参照してください。

GraphQLを使用してパッケージ全体を直接削除することはできませんが、パッケージのすべてのバージョンを削除すれば、パッケージはGitHub Enterprise Server上に表示されなくなります。

パッケージ全体を削除する

GitHub上でリポジトリのスコープが付いたパッケージ全体を削除する

リポジトリのスコープが付いたパッケージ全体を削除するには、パッケージを所有するリポジトリの管理者権限が必要です。 詳細については、「必要なアクセス許可」を参照してください。

  1. your GitHub Enterprise Server instance で、リポジトリのメイン ページへ移動します。 1. ファイルの一覧の右側にある [パッケージ] をクリックします。 リポジトリの概要ページの [パッケージ] リンク 3. パッケージを検索して選択してください。
  2. パッケージのランディング ページの右上にある [パッケージ設定] をクリックします。 [パッケージ設定] ボタン
  3. [危険なゾーン] の Delete this package をクリックします。
  4. 確認メッセージを読み、パッケージ名を入力してから、 I understand, delete this package. をクリックします。 パッケージの削除の確認ボタン

パッケージを復元する

以下の場合、削除したパッケージまたはバージョンを復元できます。

  • 削除後30日以内にパッケージを復元する。
  • 同一のパッケージ名前空間がまだ使用可能であり、新しいパッケージで再使用されていない。

たとえば、リポジトリ octo-repo-owner/octo-repo のスコープが付いていた、octo-package という名前の Rubygem パッケージを削除した場合、パッケージ名前空間 rubygem.pkg.github.com/octo-repo-owner/octo-repo/octo-package がまだ使用可能で、かつ 30 日が経過していない場合にのみ、そのパッケージを復元できます。

削除されたパッケージについては、その削除されたパッケージを所有するリポジトリに対する管理権限も持っていなければなりません。

詳細については、「必要なアクセス許可」を参照してください。

パッケージが復元されると、そのパッケージは以前使用していたものと同じ名前空間を使用します。 同一のパッケージ名前空間が使用可能でない場合、パッケージを復元できません。 この場合、削除したパッケージを復元するには、まず削除したパッケージの名前空間を使用する新しいパッケージを削除する必要があります。

Organization内のパッケージを復元する

削除されたパッケージは、そのパッケージが組織の所有するリポジトリ内にあったなら、組織アカウントの設定を通じて復元できます。

組織でパッケージを復元できるユーザーを確認するには、「必要なアクセス許可」を参照してください。

  1. your GitHub Enterprise Server instance で、Organization のメイン ページへ移動します。 1. Organization 名の下で、 [設定] をクリックします。 Organization の設定ボタン
  2. 左側の [パッケージ] をクリックします。
  3. Deleted Packages の、復元するパッケージの隣にある [復元] をクリックします。 [復元] ボタン
  4. 確認のため、パッケージ名を入力し、 I understand the consequences, restore this package をクリックします。 パッケージ復元の確認ボタン

パッケージのバージョンを復元する

パッケージのランディングページから、パッケージのバージョンを復元できます。 パッケージを復元できるユーザーを確認するには、「必要なアクセス許可」を参照してください。

  1. パッケージのランディングページに移動します。
  2. 右側の [パッケージ設定] をクリックします。
  3. 左側の [バージョンの管理] をクリックします。
  4. 左上の [バージョン] ドロップダウン メニューで、 [削除済み] を選択します。 削除されたバージョンを表示するドロップダウン メニュー
  5. 復元する削除済みパッケージのバージョンの横にある [復元] をクリックします。 削除されたパッケージのバージョンの隣にある復元オプション
  6. 確認のために、 I understand the consequences, restore this version をクリックします。 パッケージ バージョン復元の確認