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.

Zu Projekten beitragen

Erfahre, wie du durch Forken zu einem Projekt beiträgst.

Informationen zu Forks

Wenn du zu einem anderen Projekt beitragen möchtest, aber keinen Schreibzugriff auf das Repository hast, kannst du einen Fork- und Pull Request-Workflow verwenden.

Ein Fork ist ein neues Repository, das denselben Code und dieselben Sichtbarkeitseinstellungen verwendet wie das ursprüngliche „Upstream-Repository“. Forks werden oft verwendet, um Ideen oder Änderungen zu überprüfen, bevor sie für das Upstream-Repository vorgeschlagen werden, z. B. in Open-Source-Projekten oder wenn ein Benutzer keinen Schreibzugriff auf das Upstream-Repository hat.

Du kannst einen Beitrag leisten, indem du Pull Requests von deinem Fork an das Upstream-Repository übermittelst. Weitere Informationen findest du unter Forken eines Repositorys.

Repository forken

In diesem Tutorial wird das Spoon-Knife-Projekt verwendet. Es ist ein Testrepository auf GitHub.com, mit dem du den Fork- und Pull Request-Workflow testen kannst.

  1. Navigiere zum Spoon-Knife-Projekt auf https://github.com/octocat/Spoon-Knife.
  2. Klicke auf Forken. Schaltfläche „Forken“
  3. Wähle einen Besitzerin für das geforkte Repository aus. Erstellen einer neuen Forkseite mit hervorgehobener Besitzer-Dropdownliste
  4. Standardmäßig erhalten Forks den gleichen Namen wie die zugehörigen Upstream-Repositorys. Zur weiteren Unterscheidung kannst du den Namen des Forks ändern. Erstellen einer neuen Forkseite mit hervorgehobenem Repositorynamensfeld
  5. Füge wahlweise eine Beschreibung deines Forks hinzu. Erstellen einer neuen Forkseite mit hervorgehobenem Beschreibungsfeld
  6. Wähle aus, ob nur der Standardbranch oder alle Branches in den neuen Fork kopiert werden sollen. Bei vielen Forkszenarien, z. B. Beiträge zu Open-Source-Projekten, musst du nur den Standardbranch kopieren. Standardmäßig wird nur der Standardbranch kopiert. Option zum ausschließlichen Kopieren des Standardbranch
  7. Klicke auf Fork erstellen. Hervorgehobene Schaltfläche „Fork erstellen“

Hinweis: Wenn du weitere Branches aus dem Upstream-Repository kopieren möchtest, ist dies über die Seite Branches möglich. Weitere Informationen findest du unter Erstellen und Löschen von Branches innerhalb deines Repositorys.

Klonen eines Forks

Du hast erfolgreich einen Fork des Spoon-Knife-Repositorys erstellt. Bisher ist es jedoch nur auf GitHub vorhanden. Um an dem Projekt arbeiten zu können, musst du es auf deinen Computer klonen.

Du kannst dein Fork über die Befehlszeile, die GitHub CLI oder GitHub Desktop klonen.

  1. Navigiere auf GitHub im Spoon-Knife-Repository zu deinem Fork.

  2. Klicke oberhalb der Liste der Dateien auf Code. Schaltfläche „Code“

  3. Kopiere die URL für das Repository.

    • Um ein Repository über HTTPS zu klonen, klicke 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, klicke auf SSH und dann auf .
    • Um ein Repository über die GitHub CLI zu klonen, klicke auf GitHub CLI und dann auf . Das Zwischenablagesymbol zum Kopieren der URL zum Klonen eines Repositorys mit der GitHub-CLI 1. Öffne TerminalTerminalGit Bash. 4. Ändere das aktuelle Arbeitsverzeichnis zum Speicherort, in dem Du das geklonte Verzeichnis haben willst.
  4. Gib git clone ein, und füge dann die zuvor kopierte URL ein. Sie sieht wie folgt aus (anstelle von YOUR-USERNAME wird dein GitHub-Benutzername verwendet):

    $ git clone https://github.com/YOUR-USERNAME/Spoon-Knife
  5. Drücken Sie die EINGABETASTE. Dein lokaler Klon wird erstellt.

    $ 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.
    > remove: Total 10 (delta 1), reused 10 (delta 1)
    > Unpacking objects: 100% (10/10), done.

Weitere Informationen zu 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
  1. Klicke im Menü File auf Repository klonen.

    Menüoption zum Klonen in der Mac-App

    Menüoption zum Klonen in der Windows-App

    1. 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)

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

    Repository-Liste klonen

    Repository-Liste klonen

    1. Klicke auf **Auswählen**, und navigiere zu einem lokalen Pfad, in den du das Repository klonen möchtest.

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

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

    1. Klicken Sie auf **Klonen**.

    Die Schaltfläche „clone“ (Klonen)

    Die Schaltfläche „clone“ (Klonen)

Erstellen eines Branches für die Arbeit

Bevor du Änderungen am Projekt vornimmst, solltest du einen neuen Branch erstellen und ihn auschecken. Indem du Änderungen in einem eigenen Branch verwaltest, folgst du dem GitHub-Flow und vereinfachst eine spätere erneute Mitwirkung am selben Projekt. Weitere Informationen findest du unter GitHub-Flow.

git branch BRANCH-NAME
git checkout BRANCH-NAME
git branch BRANCH-NAME
git checkout BRANCH-NAME

Weitere Informationen zum Erstellen und Verwalten von Branches in GitHub Desktop findest du unter Verwalten von Branches.

Vornehmen und Pushen von Änderungen

Nimm mithilfe deines bevorzugten Text-Editors (z. B. Visual Studio Code) einige Änderungen am Projekt vor. Du könntest beispielsweise den Text in index.html ändern, um deinen GitHub-Benutzernamen hinzuzufügen.

Wenn du bereit bist, die Änderungen zu übermitteln, stage und committe diese. git add . teilt Git mit, dass du alle Änderungen im nächsten Commit einschließen möchtest. git commit erstellt eine Momentaufnahme dieser Änderungen.

git add .
git commit -m "a short description of the change"
git add .
git commit -m "a short description of the change"

Weitere Informationen zum Stagen und Committen von Änderungen in GitHub Desktop findest du unter Committen und Überprüfen von Änderungen an deinem Projekt.

Wenn du Dateien stagest und committest, teilst du Git dadurch mit, dass eine Momentaufnahme der Änderungen erstellt werden kann. Du kannst weiterhin Änderungen vornehmen und mehr Commit-Momentaufnahmen erstellen.

Deine Änderungen sind derzeit nur lokal vorhanden. Wenn du bereit bist, deine Änderungen an GitHub zu pushen, pushe deine Änderungen an die Remoteseite.

git push
git push

Weitere Informationen zum Pushen von Änderungen an GitHub Desktop findest du unter Pushen von Änderungen an GitHub.

Erstellen eines Pull Request

Nun kannst du Änderungen am Hauptprojekt vorschlagen. Dies ist der letzte und vermutlich wichtigste Schritt bei der Erstellung eines Forks von einem fremden Projekt. Wenn du eine Änderung vorgenommen hast, von der du denkst, dass sie der Community nutzen würde, solltest du auf jeden Fall in Betracht ziehen, diese zu veröffentlichen.

Navigiere dazu zum Repository auf GitHub, wo sich dein Projekt befindet. In diesem Beispiel wäre es https://github.com/<your_username>/Spoon-Knife. Es wird ein Banner angezeigt, das angibt, dass dein Branch ein Commit vor octocat:main ist. Klicke auf Mitwirken und dann auf Einen Pull Request öffnen.

GitHub leitet dich zu einer Seite weiter, auf der die Unterschiede zwischen deinem Fork und dem octocat/Spoon-Knife-Repository anzeigt werden. Klicken Sie auf Pull Request erstellen.

GitHub leitet dich zu einer Seite weiter, auf der du einen Titel und eine Beschreibung für deine Änderungen eingeben kannst. Es ist wichtig, so viele nützliche Informationen und eine Begründung dafür zu liefern, warum du diesen Pull Request überhaupt vornimmst. DerDie Projektbesitzerin muss in der Lage sein, zu entscheiden, ob deine Änderung für die Allgemeinheit so nützlich ist, wie du denkst. Klicke schließlich auf Pull Request erstellen.

Verwalten von Feedback

Pull Requests werden viel diskutiert. In diesem Fall ist Octocat sehr beschäftigt, und wahrscheinlich werden deine Änderungen nicht zusammengeführt. Auch bei anderen Projekten solltest du nicht beleidigt sein, wenn derdie Projektbesitzerin deinen Pull Request ablehnt oder weitere Informationen darüber anfordert, warum du ihn erstellt hast. Es kann sogar sein, dass derdie Projektbesitzerin sich dazu entscheidet, deinen Pull Request nicht zusammenzuführen, und das ist in Ordnung. Deine Änderungen sind in deinem Fork vorhanden. Und wer weiß – vielleicht findet jemand, den du noch nie getroffen hast, deine Änderungen viel wertvoller als das ursprüngliche Projekt.

Auffinden von Projekten

Du hast erfolgreich einen Fork erstellt und zu einem Repository beigetragen. Weiter so! Du kannst noch mehr beitragen. Weitere Informationen findest du unter So kannst du zu Open-Source-Projekten auf GitHub beitragen.