Commits sind nur an Pull-Request-Branches möglich, auf die Folgendes zutrifft:
- Sie werden in einem Repository geöffnet, auf das du Push-Zugriff hast, und wurden von einem Fork dieses Repositorys erstellt.
- Sie befinden sich auf einem benutzereigenen Fork.
- Sie haben die Berechtigung des Pull-Request-Erstellers erhalten.
- Sie besitzen keine Brancheinschränkungen, die den Commit verhindern.
Nur der Benutzer, der den Pull Request erstellt hat, kann Dir die Erlaubnis erteilen, Commits zu seinem Branch zu übertragen. Weitere Informationen finden Sie unter Änderungen an einem Pull-Request-Branch zulassen, der von einem Fork erstellt wurde.
Note
Du kannst auch von einem Fork deines Repositorys Commits an einen Pull Request-Branch per Ihre GitHub Enterprise Server-Instance übertragen, indem du eine eigene Kopie bzw. Fork des Forks deines Repositorys erstellst und die Änderungen an denselben Head-Branch committest, in dem die ursprünglichen Pull Request-Änderungen vorgenommen wurden. Einige allgemeine Richtlinien findest du unter Einen Pull Request von einem Fork erstellen.
-
Navigiere auf GitHub Enterprise Server zur Hauptseite des Forks (oder der Kopie deines Repositorys), auf dem der Pull-Request-Branch erstellt wurde.
-
Klicke oberhalb der Liste der Dateien auf Code.
-
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, wähle SSH und dann aus.
-
Um ein Repository über die GitHub CLI zu klonen, klicke auf GitHub CLI und dann auf .
-
-
Öffne TerminalTerminalGit Bash.
Tip
Wenn du den Fork lieber mit GitHub Desktop klonen möchtest, findest du unter Ein Repository klonen weitere Informationen.
-
Ändere das aktuelle Arbeitsverzeichnis zum Speicherort, in den Du das geklonte Verzeichnis herunterladen möchtest.
cd open-source-projects
-
Gib
git clone
ein, und füge dann die aus Schritt 3 kopierte URL ein.git clone https://HOSTNAME/USERNAME/FORK-OF-THE-REPOSITORY
-
Drücke die EINGABETASTE. Dein lokaler Klon wird erstellt.
$ git clone https://HOSTNAME/USERNAME/FORK-OF-THE-REPOSITORY > Cloning into `FORK-OF-THE-REPOSITORY`... > 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.
Tip
Die Fehlermeldung „fatal: destination path 'REPOSITORY-NAME' already exists and is not an empty directory“ bedeutet, dass dein aktuelles Arbeitsverzeichnis bereits ein Repository mit demselben Namen enthält. Um den Fehler zu beheben, musst Du den Fork in ein anderes Verzeichnis klonen.
-
Navigiere in Dein neu geklontes Repository.
cd FORK-OF-THE-REPOSITORY
-
Wechsle den Branch zu dem Vergleichs-Branch des Pull Requests, auf dem die ursprünglichen Änderungen vorgenommen wurden. Wenn Du zum ursprünglichen Pull Request navigierst, siehst Du den Vergleichs-Branch oben im Pull Request.
In diesem Beispiel wird
test-branch
als Vergleichsbranch verwendet:git checkout TEST-BRANCH
Tip
Weitere Informationen zu Pull Request-Branches, einschließlich Beispielen, findest du unter Erstellen eines Pull Requests.
-
An diesem Punkt kannst Du mit diesem Branch machen, was Du möchtest. Du kannst neue Commits zu ihm pushen, lokale Tests durchführen oder andere Branches m Branch zusammenführen. Nimm nach Bedarf Änderungen vor.
-
Nachdem Du Deine Änderungen an den Head-Branch des Pull-Requests freigegeben hast, kannst Du Deine Änderungen direkt zum ursprünglichen Pull Request übertragen. In diesem Beispiel ist der Headbranch
test-branch
:$ git push origin test-branch > Counting objects: 32, done. > Delta compression using up to 8 threads. > Compressing objects: 100% (26/26), done. > Writing objects: 100% (29/29), 74.94 KiB | 0 bytes/s, done. > Total 29 (delta 8), reused 0 (delta 0) > To https://HOSTNAME/USERNAME/FORK-OF-THE-REPOSITORY.git > 12da2e9..250e946 TEST-BRANCH -> TEST-BRANCH
Deine neuen Commits werden im ursprünglichen Pull Request auf Ihre GitHub Enterprise Server-Instance widergespiegelt.