Vous pouvez uniquement effectuer des commits sur les branches de demande de tirage qui :
- sont ouvertes dans un dépôt sur lequel vous avez le droit de pousser et qui ont été créées à partir d’une duplication de ce dépôt
- se trouvent dans une duplication appartenant à l’utilisateur
- ont une autorisation accordée par le créateur de la demande de tirage
- n’ont pas de restrictions de branche qui vous empêchent de commiter
Seul l’utilisateur qui a créé la demande de tirage peut vous donner l’autorisation de pousser des commits sur la duplication qui lui appartient. Pour plus d’informations, consultez « Autorisation de changements sur une branche de demande de tirage créée à partir d’une duplication ».
Remarque : vous pouvez également effectuer des commits dans une branche de demande de tirage d’une duplication de votre référentiel via GitHub.com en créant votre propre copie (ou duplication (fork)) de la duplication de votre référentiel et en commitant les changements sur la même branche principale que celle où les changements de demande de tirage d’origine ont été créés. Pour obtenir des instructions générales, consultez « Création d’une demande de tirage à partir d’une duplication ».
-
Sur GitHub, accédez à la page principale de la duplication (ou de la copie de votre dépôt) où a été créée la branche de demande de tirage.
-
Au-dessus de la liste des fichiers, cliquez sur Code.
-
Copiez l’URL du dépôt.
-
Pour cloner le dépôt avec le protocole HTTPS, sous « HTTPS », cliquez sur .
-
Pour cloner le dépôt avec une clé SSH, en incluant un certificat émis par l’autorité de certification SSH de votre organisation, cliquez sur SSH et sur .
-
Pour cloner un dépôt avec l’GitHub CLI, cliquez sur GitHub CLI et sur .
-
-
Ouvrez TerminalTerminalGit Bash.
Astuce : Si vous préférez cloner la duplication en utilisant GitHub Desktop, consultez « Clonage d’un dépôt ».
cd open-source-projects
-
Tapez
git clone
, puis collez l’URL que vous avez copiée à l’étape 3.git clone https://github.com/USERNAME/FORK-OF-THE-REPOSITORY
-
Appuyez sur Entrée. Votre clone local va être créé.
$ git clone https://github.com/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.
Astuce : Le message d’erreur « erreur irrécupérable : le chemin de destination « REPOSITORY-NAME » existe déjà et n’est pas un répertoire vide » signifie que votre répertoire de travail actuel contient déjà un dépôt du même nom. Pour résoudre l’erreur, vous devez cloner la duplication dans un autre répertoire.
-
Accédez à votre nouveau dépôt cloné.
cd FORK-OF-THE-REPOSITORY
-
Basculez les branches vers la branche de comparaison de la demande de tirage où les changements d’origine ont été faits. Si vous accédez à la demande de tirage d’origine, vous voyez la branche de comparaison en haut de la demande de tirage.
Dans cet exemple, la branche de comparaison est
test-branch
:git checkout TEST-BRANCH
Astuce : Pour plus d’informations sur les branches de demande de tirage, y compris des exemples, consultez « Création d’une demande de tirage ».
-
À ce stade, vous pouvez faire tout ce que vous voulez avec cette branche. Vous pouvez y pousser de nouveaux commits, exécuter des tests locaux ou fusionner d’autres branches dans la branche. Faites les changements de votre choix.
-
Une fois que vous avez commité vos changements dans la branche principale de la demande de tirage, vous pouvez les poussez directement dans la demande de tirage d’origine. Dans cet exemple, la branche principale est
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://github.com/USERNAME/FORK-OF-THE-REPOSITORY.git > 12da2e9..250e946 TEST-BRANCH -> TEST-BRANCH
Vos nouveaux commits sont reflétés dans la demande de tirage d’origine sur GitHub.com.