Skip to main content

Informationen zu Berechtigungen und Sichtbarkeit von Forks

Die Berechtigungen und die Sichtbarkeit von Forks hängen davon ab, ob das Upstreamrepository öffentlich oder privat ist und ob es sich im Besitz einer Organisation befindet.

Informationen zu Berechtigungen zum Erstellen von Forks

Du kannst jedes öffentliche Repository zu deinem persönlichen Konto oder einer Organisation forken, in der du über die Berechtigung zum Erstellen von Repositorys verfügst. Wenn du Zugriff auf ein privates Repository hast und der Besitzer das Forken erlaubt, kannst du das Repository zu deinem persönlichen Konto oder einer beliebigen Organisation auf GitHub Team forken, sofern du die Berechtigungen zur Erstellung von Repositorys hast. Du kannst ein privates Repository nicht mit GitHub Free zu einer Organisation forken. Weitere Informationen zu GitHub Team und GitHub Free findest du unter GitHub-Pläne.

Wenn du ein privates Repository forkst, das zu einem persönliches Konto gehört, erhalten externe Projektmitarbeiterinnen auch Zugriff auf den Fork. Wenn du ein privates Repository forkst, das zu einer Organisation gehört, erhalten Teams innerhalb der Organisation Zugriff auf den Fork, externe Projektmitarbeiterinnen jedoch nicht. Sie können einen externen Mitarbeiter zu einer Verzweigung eines privaten Repositorys hinzufügen, das zu einer Organisation gehört, wenn Sie Besitzer dieser Organisation sind oder wenn Ihre Organisation Repository-Administratoren erlaubt, externe Mitarbeiter einzuladen.

Falls du Mitglied eines Unternehmen mit verwalteten Benutzer*innen bist, gelten weitere Einschränkungen für die Repositorys, die du forken kannst. Weitere Informationen findest du unter Informationen zu Enterprise Managed Users in der GitHub Enterprise Cloud-Dokumentation.

Organisationen können das Forken von privaten Repositorys im Besitz der Organisation zulassen oder verhindern. Weitere Informationen findest du unter Die Forking-Richtlinie für deine Organisation verwalten.

Informationen zur Sichtbarkeit von Forks

Ein Fork ist ein neues Repository, das denselben Code und dieselben Sichtbarkeitseinstellungen verwendet wie das Upstreamrepository. Alle Forks öffentlicher Repositorys sind öffentlich. Sie können die Sichtbarkeit eines Forks nicht ändern.

Alle Repositorys gehören zu einem Repositorynetzwerk. Ein Repositorynetzwerk umfasst das Upstreamrepository, die direkten Forks des Upstreamrepositorys und alle Forks dieser Forks. Alle Forks im Repositorynetzwerk weisen die gleiche Sichtbarkeitseinstellung auf. Weitere Informationen findest du unter Zusammenhänge zwischen Repositorys verstehen.

Wenn du ein Repository löschst oder dessen Sichtbarkeitseinstellungen änderst, wirkt sich dies auf die Forks des Repositorys aus. Weitere Informationen findest du unter Was geschieht mit Forks, wenn ein Repository gelöscht wird oder sich dessen Sichtbarkeit ändert?.

Wenn Sie einen Fork löschen, sind alle Codebeiträge dieses Forks weiterhin für das Repository-Netzwerk zugänglich.

Informationen zu Berechtigungen von Forks

Private Forks erben die Berechtigungsstruktur des Upstreamrepositorys. Dies hilft den Inhabern privater Repositorys, die Kontrolle über ihren Code zu behalten. Wenn das vorgelagerte Repository beispielsweise privat ist und einem Team Lese-/Schreibzugriff gibt, wird dasselbe Team Lese-/Schreibzugriff auf alle Forks des privaten vorgelagerten Repository haben. Nur Teamberechtigungen (nicht einzelne Berechtigungen) werden von privaten Forks geerbt.

Hinweis: Wenn Sie Basisberechtigungen für eine Organisation ändern, werden Berechtigungen für private Forks nicht automatisch aktualisiert.. Weitere Informationen finden Sie unter „Festlegen von Basisberechtigungen für eine Organisation“.

Öffentliche Forks erben die Berechtigungsstruktur des Upstreamrepositorys nicht. Wenn du ein öffentliches Repository in deinem persönlichen Konto forkst und dann einen Pull Request öffnest, um deine Änderungen am Upstreamrepository vorzuschlagen, kannst du jeder Person mit Pushzugriff auf das Upstreamrepository die Erlaubnis geben, Änderungen an deinen Pull Request-Branch zu pushen (einschließlich Löschung des Branches). Dies beschleunigt die Zusammenarbeit, da Repositoryverwalter*innen die Möglichkeit haben, Commits zu erstellen oder Tests vor dem Zusammenführen lokal für den Pull Request-Branch von einem benutzereigenen Fork aus auszuführen. Du kannst keine Push-Berechtigungen an eine Fork geben, die einer Organisation gehört. Weitere Informationen findest du unter Änderungen an einem Pull-Request-Branch zulassen, der von einem Fork erstellt wurde.

Informationen zu Pushregelsätzen für Fork-Repositorys

Pushregeln gelten für das gesamte Forknetzwerk für ein Repository, um sicherzustellen, dass jeder Einstiegspunkt im Repository geschützt ist. Wenn Sie beispielsweise ein Repository verzweigen, das Push-Regelsätze aktiviert hat, gelten dieselben Push-Regelsätze auch für Ihr Fork-Repository.

Bei einem Fork-Repository sind die einzigen Personen, die über Umgehungsberechtigungen für eine Pushregel verfügen, die Personen, die über Umgehungsberechtigungen im Stamm-Repository verfügen.

Weitere Informationen findest du unter Informationen zu Regelsätzen.

Wichtige Sicherheitsüberlegungen

Wenn du mit Forks arbeitest oder Besitzer*in eines Repositorys oder einer Organisation bist, das bzw. die das Forken ermöglicht, ist es wichtig, die folgenden Sicherheitsüberlegungen zu berücksichtigen.

  • Forks verfügen unabhängig vom Upstreamrepository über eigene Berechtigungen.
  • Die Besitzer*innen eines Repositorys, das geforkt wurde, verfügen über Leseberechtigungen für alle Forks im Netzwerk des Repositorys.
  • Organisationsbesitzer*innen eines Repositorys, das geforkt wurde, verfügen über Administratorberechtigungen für Forks, die in persönlichen Benutzernamespaces erstellt wurden (einschließlich der Möglichkeit, den Fork und seine Branches zu löschen).
  • Organisationsbesitzer*innen eines Repositorys, das geforkt wurde, verfügen zwar über Leseberechtigungen für die in Organisationen erstellten Forks, können den Fork oder seine Branches jedoch nicht löschen.
  • Forks, die in einer anderen Organisation erstellt wurden, werden nicht gelöscht, wenn der individuelle Zugriff über das Upstreamrepository entfernt wird.
  • Über ein beliebiges Repository im selben Netzwerk können Sie auf Commits an einem beliebigen Repository in einem Netzwerk zugreifen (einschließlich des Upstreamrepositorys), auch nachdem ein Fork gelöscht wurde.

Informationen zu Forks innerhalb einer Organisation

Forks innerhalb derselben Organisation kopieren die Projektmitarbeiter*innen und Teameinstellungen ihrer Upstreamrepositorys. Wenn sich ein Repository im Besitz einer Organisation befindet, gilt Folgendes:

  • Diese Organisation steuert die Berechtigungen ihrer Forks.
  • Die Berechtigungen aller Teams aus der Upstreamberechtigungsstruktur werden kopiert, die in der Zielorganisation oder dem Benutzernamespace vorhanden und sichtbar sind.
  • Die Administratorberechtigungen bleiben bei den Upstreambesitzerinnen, es sei denn, eine Benutzer*in forkt in eine andere Organisation.
  • Wenn dieses Repository in einen Benutzernamespace geforkt wird, verfügt die Organisation weiterhin über Administratorberechtigungen, und alle Teams mit Zugriffsberechtigungen haben Zugriff.