Commits sind nur an Pull-Request-Branches möglich, auf die Folgendes zutrifft:
- sie sind in einem Repository geöffnet, auf das Du Push-Zugriff hast, und wurden von einem Fork dieses Repositorys erstellt
- sie sind auf einer benutzereigenen Fork
- sie haben die Berechtigung des Pull-Request-Erstellers erhalten
- Für sie gelten keine Branch-Einschränkungen, die das Committen verhindern.
Nur der Benutzer, der den Pull Request erstellt hat, kann Dir die Erlaubnis erteilen, Commits zu seinem Branch zu übertragen. Weitere Informationen findest Du unter „Änderungen an einem Pull-Request-Branch zulassen, der von einem Fork erstellt wurde.“
Hinweis: Du kannst auch Commits an einen Pull-Request-Branch von einem Fork Deines Repositorys über your GitHub Enterprise Server instance machen, indem Du Deine eigene Kopie (oder Fork) des Forks Deines Repositorys erstellst und die Änderungen an denselben Head-Branch freigibst, auf dem die ursprünglichen Pull-Request-Änderungen vorgenommen wurden. Allgemeine Anleitungen findest Du unter „Einen Pull Request von einem Fork erstellen.“
-
Navigieren Sie auf GitHub Enterprise Server zur Hauptseite des Forks (oder der Kopie Ihres Repositorys), auf dem der Pull-Request-Branch erstellt wurde.
-
Above the list of files, click Code.
-
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 .
-
Öffne TerminalTerminalGit Bash.
Tipp: Wenn Du den Fork lieber mit GitHub Desktop klonen möchtest, findest Du weitere Informationen unter „Ein Repository zum GitHub Desktop klonen.“
-
Ändern Sie das aktuelle Arbeitsverzeichnis in den Speicherort, zu dem Sie das geklonte Verzeichnis herunterladen möchten.
$ cd open-source-projects
-
Geben Sie
git clone
ein, und fügen Sie dann die in Schritt 3 kopierte URL ein.$ git clone https://Hostname/USERNAME/FORK-OF-THE-REPOSITORY
-
Drücke die Eingabetaste. Der lokale 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.
Tipp: 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, müssen Sie den Fork in ein anderes Verzeichnis klonen.
-
Navigieren Sie in Ihr neu geklontes Repository.
$ cd FORK-OF-THE-REPOSITORY
-
Wechseln Sie die Branches zu dem Vergleichsbranch des Pull Requests, auf dem die ursprünglichen Änderungen vorgenommen wurden. Wenn Sie zum ursprünglichen Pull Request navigieren, sehen Sie den Vergleichsbranch oben im Pull Request. In diesem Beispiel ist der Vergleichs-Branch
test-branch
:$ git checkout test-branch
Tipp:Weitere Informationen zu Pull-Request-Branches samt Beispielen findest Du unter „Einen Pull Request erstellen.“
-
Ab diesem Punkt kannst Du mit diesem Branch machen, was Du möchtest. You can push new commits to it, run some local tests, or merge other branches into the branch. Nehmen Sie nach Bedarf Änderungen vor.
-
Wenn Sie Ihre Änderungen an den Head-Branch des Pull-Requests committet haben, können Sie Ihre Änderungen direkt zum ursprünglichen Pull Request pushen. In diesem Beispiel ist der Head-Branch
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 auf dem ursprünglichen Pull Request auf your GitHub Enterprise Server instance entsprechend wiedergegeben.