AWS CodeCommit n'est plus disponible pour les nouveaux clients. Les clients existants de AWS CodeCommit peuvent continuer à utiliser le service normalement. En savoir plus »
Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Créer une demande d'extraction
La création de demandes d'extraction permet aux autres utilisateurs de voir et de vérifier vos modifications de code avant de les fusionner dans une autre branche. Tout d'abord, vous devez créer une branche pour vos modifications de code. C'est ce que l'on appelle la branche source d'une demande d'extraction. Une fois que vous avez validé et envoyé ces modifications dans le référentiel, vous pouvez créer une demande d'extraction qui compare le contenu de cette branche (branche source) à la branche dans laquelle vous souhaitez fusionner vos modifications après la fermeture de la demande d'extraction (branche de destination).
Vous pouvez utiliser la AWS CodeCommit console ou le AWS CLI pour créer des pull requests pour votre dépôt.
Création d'une pull request (console)
Vous pouvez utiliser la CodeCommit console pour créer une pull request dans un CodeCommit référentiel. Si votre référentiel est configuré avec des notifications, les utilisateurs abonnés reçoivent un e-mail lorsque vous créez une demande d'extraction.
-
Ouvrez la CodeCommit console sur https://console.aws.amazon.com/codesuite/codecommit/home
. -
Dans Repositories (Référentiels), sélectionnez le nom du référentiel dans lequel vous voulez créer une demande d'extraction.
-
Dans le volet de navigation, choisissez Pull Requests.
Astuce
Vous pouvez également créer des demandes d'extractions depuis Branches et Code.
-
Choisissez Create pull request.
-
Dans la section Source de Create pull request, recherchez la branche qui contient les modifications que vous voulez faire vérifier.
-
Dans Destination, choisissez la branche dans laquelle vous prévoyez de fusionner vos modifications de code lorsque la demande d'extraction est fermée.
-
Choisissez Comparer. Une comparaison s'exécute sur les deux branches et les différences entre elles s'affichent. Une analyse est également effectuée pour déterminer si les deux branches peuvent être fusionnées automatiquement lors de la fermeture de la demande d'extraction.
-
Passez en revue les détails de la comparaison et les modifications pour vous assurer que la demande d'extraction contient les modifications et les validations que vous voulez faire vérifier. Si tel n'est pas le cas, ajustez vos choix pour les branches source et de destination, et choisissez Compare à nouveau.
-
Lorsque vous êtes satisfait des résultats de comparaison de la demande d'extraction, dans Titre, saisissez un titre court mais descriptif pour cette révision. Il s'agit du titre qui s'affiche dans la liste des demandes d'extraction pour le référentiel.
-
(Facultatif) Dans Description, saisissez les détails relatifs à la révision et toutes les autres informations utiles pour les réviseurs.
-
Sélectionnez Create (Créer).
Votre demande d'extraction s'affiche dans la liste des demandes d'extraction du référentiel. Si vous avez configuré les notifications, les abonnés à la rubrique Amazon SNS reçoivent un e-mail les informant de la nouvelle pull request créée.
Créez une pull request (AWS CLI)
Pour utiliser AWS CLI des commandes avec CodeCommit, installez le AWS CLI. Pour de plus amples informations, veuillez consulter Référence des commandes en ligne.
Pour utiliser le AWS CLI pour créer une pull request dans un CodeCommit référentiel
-
Exécutez la commande create-pull-request en indiquant :
-
Le nom de la demande d'extraction (avec l'option --title).
-
La description de la demande d'extraction (avec l'option --description).
-
Une liste des cibles pour la commande create-pull-request, y compris :
-
Le nom du CodeCommit référentiel dans lequel la pull request est créée (avec l'repositoryNameattribut).
-
Le nom de la branche qui contient les modifications de code que vous voulez faire vérifier, également connue sous le nom de branche source (avec l'attribut sourceReference).
-
(Facultatif) Le nom de la branche dans laquelle vous prévoyez de fusionner vos modifications de code, également connue sous le nom de branche de destination, si vous ne souhaitez pas les fusionner dans la branche par défaut (avec l'attribut destinationReference).
-
-
Un jeton d'idempotence unique généré par le client (avec l'option --client-request-token).
Cet exemple crée une pull request nommée
Pronunciation difficulty analyzer
avec une descriptionPlease review these changes by Tuesday
qui cible la branchejane-branch
source. La pull request doit être fusionnée dans la branchemain
par défaut d'un CodeCommit dépôt nomméMyDemoRepo
:aws codecommit create-pull-request --title "
Pronunciation difficulty analyzer
" --description "Please review these changes by Tuesday
" --client-request-token 123Example --targets repositoryName=MyDemoRepo,sourceReference=jane-branch -
-
Si elle aboutit, cette commande produit une sortie similaire à ce qui suit :
{ "pullRequest": { "approvalRules": [ { "approvalRuleContent": "{\"Version\": \"2018-11-08\",\"DestinationReferences\": [\"refs/heads/main\"],\"Statements\": [{\"Type\": \"Approvers\",\"NumberOfApprovalsNeeded\": 2,\"ApprovalPoolMembers\": [\"arn:aws:sts::123456789012:assumed-role/CodeCommitReview/*\"]}]}", "approvalRuleId": "dd8b17fe-EXAMPLE", "approvalRuleName": "2-approver-rule-for-main", "creationDate": 1571356106.936, "lastModifiedDate": 571356106.936, "lastModifiedUser": "arn:aws:iam::123456789012:user/Mary_Major", "originApprovalRuleTemplate": { "approvalRuleTemplateId": "dd3d22fe-EXAMPLE", "approvalRuleTemplateName": "2-approver-rule-for-main" }, "ruleContentSha256": "4711b576EXAMPLE" } ], "authorArn": "arn:aws:iam::111111111111:user/Jane_Doe", "description": "Please review these changes by Tuesday", "title": "Pronunciation difficulty analyzer", "pullRequestTargets": [ { "destinationCommit": "5d036259EXAMPLE", "destinationReference": "refs/heads/main", "repositoryName": "MyDemoRepo", "sourceCommit": "317f8570EXAMPLE", "sourceReference": "refs/heads/jane-branch", "mergeMetadata": { "isMerged": false } } ], "lastActivityDate": 1508962823.285, "pullRequestId": "42", "clientRequestToken": "123Example", "pullRequestStatus": "OPEN", "creationDate": 1508962823.285 } }