Skip to main content

Ein Repository forken

Erstellen Sie auf GitHub einen Fork eines Repositorys, um Änderungen vorzuschlagen, an Projekten zusammenzuarbeiten und Ihre eigene Kopie der Codebasis zu verwalten.

Platform navigation

Informationen zu Forks

Wenn Sie ein Repository forken, können Sie Änderungen an einem Projekt vorschlagen, ohne dass sich dies auf das Upstream-Repository auswirkt. Siehe Informationen zu Forks.

Voraussetzungen

Falls Sie dies noch nicht getan haben, richten Sie Git und die Authentifizierung mithilfe von GitHub.com von Git ein. Siehe Einrichten von Git.

Ein Repository abzweigen

Man erstellt vielleicht einen Fork eines Projekts, um Änderungen am Upstream-Repository vorzuschlagen. In diesem Fall empfiehlt es sich, Ihren Fork regelmäßig mit dem Upstream-Repository zu synchronisieren. Zu diesem Zweck musst du Git in der Befehlszeile verwenden. Du kannst das Festlegen des Upstream-Repositorys mit demselben octocat/Spoon-Knife-Repository üben, das du gerade geforkt hast.

  1. Gehen Sie auf GitHub zum octocat/Spoon-Knife-Repository.

  2. Klicke in der oberen rechten Ecke der Seite auf Fork.

    Screenshot der Hauptseite eines Repositorys. Eine Schaltfläche mit einem Forkensymbol und der Bezeichnung „Fork 59.3k“ ist dunkelorange umrandet.

  3. Wähle unter „Besitzer“ das Dropdownmenü und dann einen Besitzerin für das geforkte Repository aus.

  4. Standardmäßig erhalten Forks den gleichen Namen wie die zugehörigen Upstream-Repositorys. Geben Sie optional im Feld "Repository-Name" einen anderen Namen ein, um Ihren Fork zu unterscheiden.

  5. Gib optional im Feld „Beschreibung“ eine Beschreibung für deinen Fork ein.

  6. Wähle optional Nur Standardbranch kopieren aus.

    Bei vielen Fork-Szenarien, wie z. B. bei Beiträgen zu Open-Source-Projekten, genügt es oft, den Standardbranch zu kopieren. Wenn du diese Option nicht auswählst, werden alle Branches in den neuen Fork kopiert.

  7. Klicke auf Fork erstellen.

Hinweis

Du kannst über die Seite Branches weitere Branches aus dem Upstreamrepository kopieren. Siehe Managing branches within your repository.

Hinweis

Weitere Informationen zur GitHub CLI findest du unter Informationen zu GitHub CLI.

Um einen Fork für ein Repository zu erstellen, verwende den Unterbefehl gh repo fork.

gh repo fork REPOSITORY

Um den Fork in einer Organisation zu erstellen, verwende das --org-Flag.

gh repo fork REPOSITORY --org "octo-org"

Sie können auf GitHub.com oder in GitHub Desktop einen Fork eines Repositorys erstellen. Informationen zum Forken auf GitHub.com finden Sie in der Webbrowser-Version dieses Artikels.

Wenn du in GitHub Desktop ein Repository klonst, für das du nicht über Schreibzugriff verfügst, und dann versuchst, eine Änderung an das Repository zu pushen, wird ein Fork für dich erstellt.

  1. Klicke im Menü File auf Repository klonen.

    Screenshot der Menüleiste auf einem Mac. Das Dropdownmenü „Datei“ wird erweitert, und die Option „Repository klonen“ ist orange umrandet.

    Screenshot der Menüleiste „GitHub Desktop“ unter Windows. Das Dropdownmenü „File“ ist erweitert, und die Option „Clone Repository“ ist orange umrandet.

  2. Klicke auf die Registerkarte, die dem Speicherort des zu klonenden Repositorys entspricht. In diesem Beispiel klickst du auf die URL-Registerkarte.

    Screenshot: Registerkarte „URL“ im Fenster „Clone a repository“ Die Registerkarten „GitHub.com“, „GitHub Enterprise“ und „URL“ sind dunkelorange umrandet.

  3. Gib die URL oder den Pfad des Repositorys an, das du klonen möchtest.

    Screenshot: Registerkarte „URL“ im Fenster „Clone a repository“ Die Eingabe mit dem Inhalt „octocat/Spoon-Knife“ wird mit einem orangefarbenen Rahmen hervorgehoben.

  4. Um das lokale Verzeichnis auszuwählen, in das du das Repository klonen möchtest, klicke neben dem Feld „Lokaler Pfad“ auf Auswählen, und navigiere zum Verzeichnis.

    Screenshot: Registerkarte „URL“ im Fenster „Clone a repository“ Eine Schaltfläche mit der Beschriftung „Auswählen“ ist orange umrandet.

  5. Klicke unten im Fenster „Repository klonen“ auf Klonen.

  6. Zum Erstellen eines Forks musst du versuchen, eine Änderung an das Repository zu pushen. Erstelle beispielsweise einen neuen Branch, und veröffentliche diesen neu erstellten Branch. Eine Eingabeaufforderung wird angezeigt, in der du gefragt wirst, ob du dieses Repository forken möchtest.

    Screenshot: Fenster „Create a fork prompt“. Eine Schaltfläche mit der Bezeichnung „Fork this repository“ wird durch einen orangefarbenen Rahmen hervorgehoben.

  7. Lies die Informationen unter „Wie planst du die Verwendung dieses Forks?“ .

    • Wenn du diesen Fork verwenden möchtest, um am ursprünglichen Upstreamrepository mitzuwirken, klicke auf Beitrag für das übergeordnete Projekt.
    • Wenn du diesen Fork für ein Projekt verwenden möchtest, das nicht mit dem Upstreamrepository zusammenhängt, klicke auf Für meine eigenen Zwecke.
  8. Klicke auf Weiter.

Klonen deines geforkten Repositorys

Sie haben jetzt einen Fork des Spoon-Knife-Repositorys, aber die Dateien aus diesem Repository befinden sich noch nicht auf Ihrem Computer.

  1. Gehen Sie auf GitHub und dann zu Ihrem Fork des Spoon-Knife-Repositorys.

  2. Klicke oberhalb der Liste der Dateien auf Code.

    Screenshot: Liste der Dateien auf der Startseite eines Repositorys. Die Schaltfläche „Code“ ist orange umrandet.

  3. Kopiere die URL für das Repository.

    • Um das Repository mit HTTPS zu klonen, klicken Sie unter "HTTPS" auf .

    • Wenn du das Repository mithilfe eines SSH-Schlüssels klonen möchtest, einschließlich eines Zertifikats, das von der SSH-Zertifizierungsstelle deiner Organisation ausgestellt wurde, wähle SSH und dann aus.

    • Um ein Repository über die GitHub CLI zu klonen, klicke auf GitHub CLI und dann auf .

      Screenshot des Dropdownmenüs „Code“ Rechts neben der HTTPS-URL für das Repository ist ein Kopiersymbol dunkelorange umrandet.

  4. Öffnen Sie Ihr Terminal oder Git Bash.

  5. Ändere das aktuelle Arbeitsverzeichnis zum Speicherort, in dem Du das geklonte Verzeichnis haben willst.

  6. Geben Sie git clone ein, und fügen Sie dann die URL ein, die Sie zuvor kopiert haben. Es wird so aussehen, mit Ihrem GitHub Benutzernamen anstelle von YOUR-USERNAME:

    git clone https://github.com/YOUR-USERNAME/Spoon-Knife
    
  7. Drücken Sie die Eingabetaste. Git erstellt Ihren lokalen Klon.

    $ git clone https://github.com/YOUR-USERNAME/Spoon-Knife
    > Cloning into `Spoon-Knife`...
    > remote: Counting objects: 10, done.
    > remote: Compressing objects: 100% (8/8), done.
    > remote: Total 10 (delta 1), reused 10 (delta 1)
    > Unpacking objects: 100% (10/10), done.
    

Klonen deines geforkten Repositorys

Sie haben jetzt einen Fork des Spoon-Knife-Repositorys, aber die Dateien aus diesem Repository befinden sich noch nicht auf Ihrem Computer.

Hinweis

Weitere Informationen zur GitHub CLI findest du unter Informationen zu GitHub CLI.

Verwende das Flag --clone, um einen Klon deines Forks zu erstellen.

gh repo fork REPOSITORY --clone=true

Konfigurieren von Git zum Synchronisieren deines Forks mit dem Upstream-Repository

Wenn Sie ein Projekt zum Vorschlagen von Änderungen an dem Upstream-Repository verzweigen, können Sie Git so konfigurieren, dass Änderungen aus dem Upstream-Repository in den lokalen Klon Ihrer Verzweigung abgerufen werden.

  1. Navigieren Sie auf GitHub zum Repository octocat/Spoon-Knife.

  2. Klicke oberhalb der Liste der Dateien auf Code.

    Screenshot: Liste der Dateien auf der Startseite eines Repositorys. Die Schaltfläche „Code“ ist orange umrandet.

  3. Kopiere die URL für das Repository.

    • Um das Repository mit HTTPS zu klonen, klicken Sie unter "HTTPS" auf .

    • Wenn du das Repository mithilfe eines SSH-Schlüssels klonen möchtest, einschließlich eines Zertifikats, das von der SSH-Zertifizierungsstelle deiner Organisation ausgestellt wurde, wähle SSH und dann aus.

    • Um ein Repository über die GitHub CLI zu klonen, klicke auf GitHub CLI und dann auf .

      Screenshot des Dropdownmenüs „Code“ Rechts neben der HTTPS-URL für das Repository ist ein Kopiersymbol dunkelorange umrandet.

  4. Öffnen Sie Ihr Terminal oder Git Bash.

  5. Wechseln Sie in das Verzeichnis Ihres geklonten Forks.

    • Um in dein Startverzeichnis zu wechseln, gib nur cd ohne zusätzlichen Text ein.
    • Um die Dateien und Ordner im aktuellen Verzeichnis aufzulisten, gib ls ein.
    • Um zu einem deiner aufgelisteten Verzeichnisse zu wechseln, gib cd YOUR-LISTED-DIRECTORY ein.
    • Um ein Verzeichnis nach oben zu wechseln, gib cd .. ein.
  6. Geben Sie git remote -v ein und drücken Sie Eingabetaste. Sie sehen das Remote-Repository, das derzeit für Ihren Fork konfiguriert ist.

    $ git remote -v
    > origin  https://github.com/YOUR-USERNAME/YOUR-FORK.git (fetch)
    > origin  https://github.com/YOUR-USERNAME/YOUR-FORK.git (push)
    
  7. Geben Sie git remote add upstreamdann die URL ein, die Sie in Schritt 3 kopiert haben, und drücken Sie Eingabetaste. Das sieht folgendermaßen aus:

    git remote add upstream https://github.com/ORIGINAL-OWNER/Spoon-Knife.git
    
  8. Um das neue Upstream-Repository zu überprüfen, das Sie für Ihren Fork angegeben haben, geben Sie git remote -v erneut ein. Sie sollten die URL für Ihren Fork unter origin und die URL für das Upstream-Repository unter upstream sehen.

    $ git remote -v
    > origin    https://github.com/YOUR-USERNAME/YOUR-FORK.git (fetch)
    > origin    https://github.com/YOUR-USERNAME/YOUR-FORK.git (push)
    > upstream  https://github.com/ORIGINAL-OWNER/ORIGINAL-REPOSITORY.git (fetch)
    > upstream  https://github.com/ORIGINAL-OWNER/ORIGINAL-REPOSITORY.git (push)
    

Sie können nun Ihren Fork mit dem Upstream-Repository mit ein paar Git-Befehlen synchronisieren. Siehe Syncing a fork.

Hinweis

Weitere Informationen zur GitHub CLI findest du unter Informationen zu GitHub CLI.

Um ein Remoterepository für das geforkte Repository zu konfigurieren, verwende das --remote-Flag.

gh repo fork REPOSITORY --remote=true

Um den Namen des Remoterepositorys anzugeben, verwende das --remote-name-Flag.

gh repo fork REPOSITORY --remote-name "main-remote-repo"

Bearbeiten eines Forks

Du kannst nun jede Änderung am Fork vornehmen, einschließlich:

  • Erstellen von Branches: Branches ermöglichen es dir, neue Features zu erstellen oder Ideen auszuprobieren, ohne dein Hauptprojekt zu gefährden.
  • Pull Requests erstellen: Wenn Sie zum Upstream-Repository beitragen möchten, können Sie einen Pull Request einreichen, damit der ursprüngliche Autor Ihren Fork in sein Repository übernimmt. Siehe Creating a pull request from a fork.

Ein anderes Repository zum Forken finden

Forke ein Repository, um an einem Projekt mitzuarbeiten. Du kannst ein beliebiges öffentliches Repository forken:

  • In dein persönliches Konto
  • In eine Organisation, 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 zulässt, kannst du das Repository forken:

  • In dein persönliches Konto
  • In eine Organisation mit GitHub Team, in der du über die Berechtigung zum Erstellen von Repositorys verfügst

Du kannst ein privates Repository nicht mit GitHub Free zu einer Organisation forken. Weitere Informationen zu GitHub Team und GitHub Free findest du unter Pläne von GitHub.

Weitere Informationen dazu, wann Sie ein Repository verzweigen können, finden Sie unter Gabeln.

Sie können unter Entdecken GitHub nach Projekten suchen und anfangen, zu Open-Source-Repositories beizutragen. Siehe Möglichkeiten finden, Open Source auf GitHub beizutragen.

Nächste Schritte

Du hast jetzt ein Repository geforkt, das Klonen deines Forks geübt und ein vorgelagertes Repository konfiguriert.

  • Weitere Informationen zur Verwendung von Git in der Befehlszeile zum Klonen und Synchronisieren von Änderungen finden Sie unter Einrichten von Git.

  • Sie können auch ein neues Repository erstellen, um Ihre Projekte zu speichern und den Code auf GitHub zu teilen. Durch das Erstellen eines Repositorys für dein Projekt kannst du Code auf GitHub speichern. Auf diese Weise wird die Arbeit abgesichert, die du mit anderen Entwickler*innen teilen kannst. Weitere Informationen finden Sie unter Schnellstart für Repositorys.

  • Jedes Repository auf GitHub befindet sich im Besitz einer Person oder einer Organisation. Du kannst mit den Personen, Repositorys und Organisationen interagieren, indem du eine Verbindung herstellst und ihnen auf GitHub folgst. Weitere Informationen finden Sie unter Inspiration auf GitHub finden.

  • GitHub verfügt über eine großartige Supportcommunity, in der du um Hilfe bitten und mit Menschen aus der ganzen Welt sprechen kannst. Nimm an der Unterhaltung auf GitHub Community teil.