Diese Version von GitHub Enterprise wurde eingestellt am 2021-09-23. Es wird keine Patch-Freigabe vorgenommen, auch nicht für kritische Sicherheitsprobleme. Für eine bessere Leistung, verbesserte Sicherheit und neue Features nimm ein Upgrade auf die neueste Version von GitHub Enterprise vor. Wende Dich an den GitHub Enterprise-Support, um Hilfe beim Upgrade zu erhalten.

Ein Repository forken

Ein Fork ist eine Kopie eines Repositorys. Durch das Forken eines Repositorys kannst Du Änderungen uneingeschränkt testen, ohne Auswirkungen auf das Originalprojekt.

Informationen zu Forks

Üblicherweise werden Forks genutzt, um Änderungen für ein Projekt eines anderes Benutzers vorzuschlagen oder ein Projekt eines anderen Benutzers als Ausgangspunkt für eigene Ideen zu verwenden. You can fork a repository to create a copy of the repository and make changes without affecting the upstream repository. For more information, see "Working with forks."

Änderungen für ein Projekt eines anderen Benutzers vorschlagen

Du kannst Forks beispielsweise benutzen, um Änderungen im Zusammenhang mit der Behebung eines Fehlers vorzuschlagen. Anstatt einen Issue für einen Bug zu erstellen, kannst Du:

  • das Repository forken,
  • den Fehler beheben,
  • Submit a pull request to the project owner.

Ein Projekt eines anderen Benutzers als Ausgangspunkt für eigene Ideen verwenden

Open-Source-Software basiert auf der Idee, dass wir durch gemeinsamen Code bessere, zuverlässigere Software erstellen können. Weitere Informationen findest Du in „Über die Open-Source-Initiative“ auf der Open-Source-Initiative-Website.

For more information about applying open source principles to your organization's development work on your GitHub Enterprise Server instance, see GitHub's white paper "An introduction to innersource."

Wenn Du ein öffentliches Repository von einem Fork eines Projekts eines anderen Benutzers erstellst, musst Du unbedingt eine Lizenzdatei hinzufügen, die bestimmt, wie Dein Projekt für andere Personen freigegeben wird. For more information, see "Choose an open source license" at choosealicense.com.

Für weitere Informationen zu Open-Source, insbesondere zum Erstellen und Vergrößern eines Open-Source-Projekts, haben wir Open-Source Leitfäden erstellt, die Dir durch die Empfehlung von Best Practices für das Erstellen und Unterhalten von Repositorys helfen, eine gesunde Open-Source-Community zu pflegen. Du kannst auch einen kostenlosen GitHub Learning Lab Kurs zur Pflege von Open-Source-Communitys absolvieren.

Vorrausetzungen

Wenn Sie es noch nicht getan haben, müssen Sie zunächst Git einrichten. Denke auch daran, Authentifizierungen zu your GitHub Enterprise Server instance über Git einzurichten.

Repository forken

Du forkst vielleicht ein Projekt, um Änderungen an das vorgelagerte - oder originale - Repository vorzuschlagen. In diesem Fall ist es ratsam, Ihren Fork regelmäßig mit dem vorgelagerten Repository zu synchronisieren. Zu diesem Zweck müssen Sie Git in der Befehlszeile verwenden. Das Festlegen des vorgelagerten Repositorys kannst Du mit demselben Repository octocat/Spoon-Knife üben, das Du gerade geforkt hast.

  1. Navigieren Sie auf your GitHub Enterprise Server instance zum Repository octocat/Spoon-Knife.
  2. Klicke in der oberen rechte Ecke der Seite auf Fork. Schaltfläche „Fork“ (Fork)

To learn more about GitHub CLI, see "About GitHub CLI."

To create a fork of a repository, use the gh repo fork subcommand.

gh repo fork repository

To create the fork in an organization, use the --org flag.

gh repo fork repository --org "octo-org"

Cloning your forked repository

Right now, you have a fork of the Spoon-Knife repository, but you don't have the files in that repository locally on your computer.

  1. Navigiere auf GitHub Enterprise Server zu Deinem Fork des Repositorys „Spoon-Knife“.

  2. Above the list of files, click Code. "Code" button

  3. To clone the repository using HTTPS, under "Clone with HTTPS", click . To clone the repository using an SSH key, including a certificate issued by your organization's SSH certificate authority, click Use SSH, then click . The clipboard icon for copying the URL to clone a repository

    The clipboard icon for copying the URL to clone a repository with GitHub CLI

  4. Öffne TerminalTerminalGit Bash.

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

  6. Gib git clone ein, und füge dann die zuvor kopierte URL ein. Der Befehl sieht wie folgt aus, wobei YOUR-USERNAME durch Deinen GitHub Enterprise Server-Benutzernamen ersetzt wird:

    $ git clone https://Hostname/YOUR-USERNAME/Spoon-Knife
  7. Drücke die Eingabetaste. Der lokale Klon wird erstellt.

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

To learn more about GitHub CLI, see "About GitHub CLI."

To create a clone of your fork, use the --clone flag.

gh repo fork repository --clone=true
  1. Klicke im Menü File (Datei) auf Clone repository (Repository klonen).

    Menüoption zum Klonen in der Mac-App

    Menüoption zum Klonen in der Windows-App

  2. Klicke auf die Registerkarte, die dem Speicherort des zu klonenden Repositorys entspricht. Du kannst auch auf URL klicken, um den Repository-Speicherort manuell einzugeben.

    Standort-Registerkarten im Menü „Clone a repository“ (Repository klonen)

    Standort-Registerkarten im Menü „Clone a repository“ (Repository klonen)

  3. Wähle in der Liste das zu klonende Repository aus.

    Repository-Liste klonen

    Repository-Liste klonen

  4. Click Choose... and navigate to a local path where you want to clone the repository.

    Die Schaltfläche „choose“ (Auswählen)

    Die Schaltfläche „choose“ (Auswählen)

  5. Klicke auf Clone (Klonen).

    Die Schaltfläche „clone“ (Klonen)

    Die Schaltfläche „clone“ (Klonen)

Configuring Git to sync your fork with the original repository

Wenn Du ein Projekt forkst, um Änderungen für das Original-Repository vorzuschlagen, kannst Du Git so konfigurieren, dass Änderungen am vorgelagerten (originalen) Repository in den lokalen Klon Deiner Fork abgerufen werden.

  1. Navigiere auf GitHub Enterprise Server zum Repository octocat/Spoon-Knife.

  2. Above the list of files, click Code. "Code" button

  3. To clone the repository using HTTPS, under "Clone with HTTPS", click . To clone the repository using an SSH key, including a certificate issued by your organization's SSH certificate authority, click Use SSH, then click . The clipboard icon for copying the URL to clone a repository

    The clipboard icon for copying the URL to clone a repository with GitHub CLI

  4. Öffne TerminalTerminalGit Bash.

  5. Change directories to the location of the fork you cloned.

    • Um in Dein Home-Verzeichnis zu wechseln, gib einfach cd ohne zusätzlichen Text ein.
    • Um die Dateien und Ordner im aktuellen Verzeichnis anzuzeigen, gib ls ein.
    • Um in eines der aufgelisteten Verzeichnisse zu wechseln, gib cd aufgeführtes_verzeichnis ein.
    • Um ein Verzeichnis nach oben zu wechseln, gib cd .. ein.
  6. Gib git remote -v ein, und drück die Eingabetaste. Daraufhin siehst Du das aktuell konfigurierte Remote-Repository für Deinen Fork.

    $ git remote -v
    > origin  https://Hostname/YOUR_USERNAME/YOUR_FORK.git (fetch)
    > origin  https://Hostname/YOUR_USERNAME/YOUR_FORK.git (push)
  7. Gib git remote add upstream ein. Füge dann die URL ein, die Du bei Schritt 2 kopiert hast, und drücke die Eingabetaste. Dies sieht wie folgt aus:

    $ git remote add upstream https://Hostname/octocat/Spoon-Knife.git
  8. Um das neue vorgelagerte Repository zu überprüfen, das Du für Deinen Fork angegeben hast, gib erneut git remote -v ein. Nun sollte die URL Deiner Fork als origin und die URL des Original-Repositorys als upstream aufgeführt sein.

    $ git remote -v
    > origin    https://Hostname/YOUR_USERNAME/YOUR_FORK.git (fetch)
    > origin    https://Hostname/YOUR_USERNAME/YOUR_FORK.git (push)
    > upstream  https://Hostname/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git (fetch)
    > upstream  https://Hostname/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git (push)

Nun können Sie Ihren Fork mit wenigen Git-Befehlen regelmäßig mit dem vorgelagerten Repository synchronisieren. Weitere Informationen finden Sie unter „Fork synchronisieren“.

To learn more about GitHub CLI, see "About GitHub CLI."

To configure a remote repository for the forked repository, use the --remote flag.

gh repo fork repository --remote=true

To specify the remote repository's name, use the --remote-name flag.

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

Nächste Schritte:

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

  • Branches erstellen: Mit Branches kannst Du ohne Risiko für das Hauptprojekt neue Funktionen entwickeln oder Ideen testen.
  • Pull Requests öffnen: Wenn Du einen Beitrag zum Original-Repository leisten möchtest, kannst Du einen Pull Request an den Original-Autor senden und ihn dazu auffordern, Deinen Fork in sein Repository abzurufen.

Ein anderes Repository zum Forken finden

Forken Sie ein Repository, um an einem Projekt mitzuarbeiten. You can fork a repository to your user account or any organization where you have repository creation permissions. Weitere Informationen finden Sie unter „Berechtigungsebenen für eine Organisation".

If you have access to a private repository and the owner permits forking, you can fork the repository to your user account or any organization on your GitHub Enterprise Server instance where you have repository creation permissions.

Geschafft!

Sie haben jetzt ein Repository geforkt, das Klonen Ihres Forks geübt und ein vorgelagertes Repository konfiguriert. For more information about cloning the fork and syncing the changes in a forked repository from your computer see "Set up Git."

You can also create a new repository where you can put all your projects and share the code on GitHub. For more information see, "Create a repository."

Each repository in GitHub Enterprise Server is owned by a person or an organization. You can interact with the people, repositories, and organizations by connecting and following them on GitHub Enterprise Server. For more information see "Be social."

GitHub Enterprise Server has a great support community where you can ask for help and talk to people from around the world. Join the conversation on Github Support Community.