Skip to main content
We publish frequent updates to our documentation, and translation of this page may still be in progress. For the most current information, please visit the English documentation.

リポジトリが削除されたり可視性が変更されたりするとフォークはどうなりますか?

リポジトリを削除したり、その可視性を変更したりすると、そのリポジトリのフォークに影響します。

警告:

  • プライベートリポジトリへの個人のアクセス権を削除すると、そのプライベートリポジトリからその人が作成したフォークはすべて削除されます。 プライベートリポジトリのローカルクローンは残ります。 プライベート リポジトリへの Team のアクセス権が削除されたり、プライベート リポジトリへのアクセス権を持つ Team が削除されたりしていることに加え、他の Team 経由でのそのリポジトリへのアクセス権を Team のメンバーが持っていなければ、そのリポジトリのプライベート フォークは削除されます。

  • LDAP Sync が有効になっていると、ある人がリポジトリから削除された場合、その人はアクセス権を失いますが、その人のフォークは削除されません。 元々のOrganizationのリポジトリへのアクセスできるように3ヶ月以内にその人がTeamに追加されたなら、次回の同期の際にフォークへのアクセスは自動的に回復されます。

  • リポジトリへのアクセスを失った個人に、機密情報や知的財産を確実に削除してもらうのは、あなたの責任です。

  • プライベート または内部 リポジトリへの管理アクセス許可を持つユーザーは、そのリポジトリのフォークを禁止することができます。また、Organization 所有者は、Organization 内でのプライベート または内部 リポジトリのフォークを禁止することができます。 詳細については、「Organization のフォークポリシーを管理する」および「リポジトリのフォークポリシーを管理する」を参照してください。

プライベートリポジトリを削除する

プライベートリポジトリを削除すると、そのプライベートフォークもすべて削除されます。

パブリックリポジトリを削除する

パブリック リポジトリを削除すると、既存のパブリック フォークの 1 つが新しい上流リポジトリとして選択されます。 他のすべてのリポジトリはこの新しい上流から分岐し、その後の pull request はこの新しい上流リポジトリに送られます。

プライベートフォークと権限

プライベートフォークは、上流もしくは親リポジトリの権限構造を継承します。 これは、プライベートリポジトリのオーナーがコードに対するコントロールを管理するための役に立ちます。 たとえば、上流リポジトリがプライベートで読み取り/書き込みアクセスをあるTeamに与えているなら、そのチームはプライベートの上流リポジトリのすべてのフォークに読み取り/書き込みアクセスを持つことになります。 (個人のアクセス許可ではなく) チームのアクセス許可のみが、プライベート フォークによって継承されます。

パブリックリポジトリをプライベートリポジトリに変更する

パブリックリポジトリを非公開にすると、そのパブリックフォークは新しいネットワークに分割されます。 パブリック リポジトリの削除と同様に、既存のパブリック フォークの 1 つが新しい上流リポジトリとして選択され、他のすべてのリポジトリはこの新しい上流から分岐します。 後続の pull request は、この新しい上流リポジトリに送られます。

つまり、パブリック リポジトリのフォークは、上流リポジトリがプライベートにされた後も、独自の別のリポジトリ ネットワーク内でパブリックのままになります。 これにより、フォークオーナーは作業を中断せずに作業を継続できます。 このようにパブリック フォークが別のネットワークに移動されなかった場合、それらのフォークの所有者は、適切なアクセス許可を取得して、(現在はプライベートになっている) 上流リポジトリから変更をプルし、pull request を送信する必要があります (以前はそれらのアクセス許可が必要ではなかったとしても)。

パブリック リポジトリで匿名の Git 読み取りアクセスが有効になっていて、そのリポジトリが非公開になっている場合、リポジトリのすべてのフォークは匿名の Git 読み取りアクセスを失い、既定の無効設定に戻ります。 分岐したリポジトリが公開された場合、リポジトリ管理者は匿名の Git 読み取りアクセスを再度有効にすることができます。 詳しくは、「リポジトリに対する匿名 Git 読み取りアクセスを有効化する」を参照してください。

プライベートリポジトリを削除する

パブリックリポジトリを非公開にしてから削除しても、そのパブリックフォークは別のネットワークに存在し続けます。

プライベートリポジトリのパブリックリポジトリへの変更

プライベート リポジトリがパブリックに変更されると、そのプライベート フォークはそれぞれスタンドアロンのプライベート リポジトリになり、独自の新しいリポジトリ ネットワークの上流になります。 プライベートフォークは、公開されるべきではない機密のコミットを含む可能性があるため、自動的に公開されることはありません。

パブリックリポジトリを削除する

プライベートリポジトリを公開してから削除しても、そのプライベートフォークは独立したプライベートリポジトリとして別々のネットワークに存在し続けます。

内部リポジトリの表示を変更する

Enterprise のポリシーでフォークが許可されている場合、内部リポジトリのフォークはすべてプライベートになります。 内部リポジトリの表示を変更した場合、Organization または個人アカウントが所有するフォークはすべてプライベートのままになります。

内部リポジトリを削除する

内部リポジトリの表示を変更してからリポジトリを削除すると、フォークは別のネットワークに引き続き存在します。

参考資料