

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Mit Pull-Requests in AWS CodeCommit Repositorys arbeiten
<a name="pull-requests"></a>

Eine Pull-Anforderung ist die primäre Vorgehensweise, wie Sie und andere Repository-Benutzer Codeänderungen prüfen, kommentieren und über Branches hinweg zusammenführen können. Mit Pull-Anforderungen können Sie Codeänderungen auf kleine Änderungen oder Fehlerkorrekturen, größere Funktionserweiterungen oder neue Versionen Ihrer veröffentlichten Software gemeinsam prüfen. Hier finden Sie einen möglichen Workflow für eine Pull-Anforderung:

Li Juan, ein Entwickler, der in einem Repo mit dem Namen arbeitet MyDemoRepo, möchte an einer neuen Funktion für eine kommende Version eines Produkts arbeiten. Um ihre Arbeit vom produktionsreifen Code zu trennen, erstellt sie einen Zweig aus dem Standardzweig und benennt ihn. *feature-randomizationfeature* Sie schreibt Code, führt Commits durch und überträgt den neuen Funktionscode auf diesen Branch. Sie möchte die Codequalität durch andere Repository-Benutzer überprüfen lassen, bevor sie ihre Änderungen in den Standard-Branch einfügt. Zu diesem Zweck erstellt sie eine Pull-Anforderung. Die Pull-Anforderung enthält den Vergleich zwischen dem Branch mit ihrer Arbeit und dem Branch mit dem Code, mit dem sie ihre Änderungen zusammenführen möchte (in diesem Fall der Standard-Branch). Sie kann außerdem eine Genehmigungsregel erstellen, die voraussetzt, dass die Pull-Anforderung von einer bestimmten Anzahl von Benutzern genehmigt wird. Und sie kann einen Genehmigungs-Pool von Benutzern angeben. Andere Benutzer prüfen ihren Code sowie die Änderungen und fügen Kommentare und Vorschläge hinzu. Als Reaktion auf Kommentare aktualisiert sie den Branch mit ihrer Arbeit möglicherweise mehrmals mit Codeänderungen. Ihre Änderungen werden jedes Mal, wenn sie sie an diesen Branch-In überträgt, in den Pull-Request übernommen. CodeCommit Sie kann zudem Änderungen einbeziehen, die im vorgesehenen Ziel-Branch vorgenommen wurden, während die Pull-Anforderung offen ist, sodass Benutzer sicher sein können, dass sie alle Änderungsvorschläge im Kontext sehen. Wenn sie und die Prüfer zufrieden sind und die Bedingungen für Genehmigungsregeln (falls vorhanden) erfüllt sind, führt sie oder einer der Prüfer den Code zusammen und schließt die Pull-Anforderung. 

![\[Erstellen einer Pull-Anforderung\]](http://docs.aws.amazon.com/de_de/codecommit/latest/userguide/images/codecommit-pull-request-create.png)


Pull-Anforderungen erfordern zwei Branches: einen Quell-Branch mit dem Code, den Sie prüfen lassen möchten, und einen Ziel-Branch, mit dem der geprüfte Code zusammengeführt werden soll. Der Quell-Branch enthält den AFTER-Commit, bei dem es sich um den Commit mit den Änderungen handelt, die Sie mit dem Ziel-Branch zusammenführen möchten. Der Ziel-Branch enthält den BEFORE-Commit, der den Status des Codes repräsentiert, bevor der Pull-Anforderungs-Branch mit dem Ziel-Branch zusammengeführt wird. Die Wahl der Merge-Strategie wirkt sich auf die Details aus, wie Commits zwischen den Quell- und Ziel-Branches in der CodeCommit Konsole zusammengeführt werden. Weitere Informationen zu Merge-Strategien finden Sie CodeCommit unter[Eine Pull-Anfrage zusammenführen (Konsole)](how-to-merge-pull-request.md#how-to-merge-pull-request-console).

![\[Die Quell- und Ziel-Branches für eine Pull-Anforderung mit der Beziehung zwischen BEFORE- und AFTER-Commits\]](http://docs.aws.amazon.com/de_de/codecommit/latest/userguide/images/codecommit-pull-request-concepts.png)


Die Pull-Anforderung zeigt die Unterschiede zwischen der Spitze des Source-Branch und dem neuesten Commit auf dem Ziel-Branch, auf dem die Pull-Anforderung erstellt wird, sodass die Benutzer Änderungen ansehen und kommentieren können. Sie können die Pull-Anforderung aufgrund der Kommentare mit weiteren Änderungen aktualisieren, indem Sie Commits für Änderungen durchführen und diese per Push auf den Quell-Branch übertragen. 

![\[Hinzufügen eines Kommentars zu einer Zeile in einer Pull-Anforderung.\]](http://docs.aws.amazon.com/de_de/codecommit/latest/userguide/images/codecommit-pull-request-comment.png)


Wenn Ihr Code geprüft wurde und die Genehmigungsregeln (falls vorhanden) erfüllt sind, können Sie die Pull-Anforderung auf verschiedene Arten schließen: 
+ Führen Sie die Branches lokal zusammen und übertragen Sie Ihre Änderungen per Push. Dadurch wird die Anforderung automatisch geschlossen, wenn die Fast-Forward-Merge-Strategie verwendet wird und es keine Zusammenführungskonflikte gibt.
+ Verwenden Sie die AWS CodeCommit Konsole, um die Pull-Anfrage ohne Zusammenführung zu schließen, Konflikte bei einer Zusammenführung zu lösen oder, falls keine Konflikte vorliegen, die Branches mit einer der verfügbaren Merge-Strategien zu schließen und zusammenzuführen.
+ Verwenden Sie die AWS CLI.

Bevor Sie eine Pull-Anforderung erstellen, müssen Sie folgende Schritte ausführen:
+ Stellen Sie sicher, dass Sie die zu prüfenden Codeänderungen bestätigt und per Push an einen Branch (den Quell-Branch) übergeben haben.
+ Richten Sie Benachrichtigungen für Ihr Repository ein, sodass die Benutzer über die Pull-Anforderung und entsprechende Änderungen informiert werden. (Dieser Schritt ist zwar optional, wird aber empfohlen.)
+ Erstellen Sie Genehmigungsregelvorlagen mit dem Repository und ordnen Sie sie zu, damit automatisch Genehmigungsregeln für Pull-Anforderungen erstellt werden und die Code-Qualität sichergestellt bleibt. Weitere Informationen finden Sie unter [Arbeiten mit Genehmigungsregelvorlagen](approval-rule-templates.md).

Pull-Requests sind effektiver, wenn Sie IAM-Benutzer für Ihre Repository-Benutzer in Ihrem Amazon Web Services Services-Konto eingerichtet haben. Das erleichtert das Identifizieren des Benutzers, der einen Kommentar abgegeben hat. Der andere Vorteil besteht darin, dass IAM-Benutzer Git-Anmeldeinformationen für den Repository-Zugriff verwenden können. Weitere Informationen finden Sie unter [Schritt 1: Erstkonfiguration für CodeCommit](setting-up-gc.md#setting-up-gc-account). Sie können Pull-Anforderungen mit anderen Arten von Benutzern verwenden, einschließlich Benutzern mit verbundenem Zugriff.

Informationen zur Arbeit mit anderen Aspekten Ihres Repositorys finden Sie unter CodeCommit[Arbeiten mit Repositorien](repositories.md),[Arbeiten mit Genehmigungsregelvorlagen](approval-rule-templates.md),[Mit Dateien arbeiten](files.md), [Mit Commits arbeiten](commits.md)[Arbeiten mit Zweigen](branches.md), und[Mit Benutzereinstellungen arbeiten](user-preferences.md). 

**Topics**
+ [Erstellen einer Pull-Anforderung](how-to-create-pull-request.md)
+ [Erstellen Sie eine Genehmigungsregel für eine Pull-Anfrage](how-to-create-pull-request-approval-rule.md)
+ [Pull-Requests in einem AWS CodeCommit Repository anzeigen](how-to-view-pull-request.md)
+ [Überprüfen einer Pull-Anforderung](how-to-review-pull-request.md)
+ [Aktualisieren einer Pull-Anforderung](how-to-update-pull-request.md)
+ [Genehmigungsregel für einen Pull Request bearbeiten oder löschen](how-to-edit-delete-pull-request-approval-rule.md)
+ [Genehmigungsregeln für eine Pull-Anfrage überschreiben](how-to-override-approval-rules.md)
+ [Einen Pull-Request in einem AWS CodeCommit Repository zusammenführen](how-to-merge-pull-request.md)
+ [Konflikte in einer Pull-Anfrage in einem AWS CodeCommit Repository lösen](how-to-resolve-conflict-pull-request.md)
+ [Einen Pull-Request in einem AWS CodeCommit Repository schließen](how-to-close-pull-request.md)

# Erstellen einer Pull-Anforderung
<a name="how-to-create-pull-request"></a>

Durch das Erstellen von Pull-Anforderungen können andere Benutzer Ihre Codeänderungen sehen und prüfen, bevor Sie diese mit einem anderen Branch zusammenführen. Zunächst erstellen Sie einen Branch für Ihre Codeänderungen. Dieser wird als Quell-Branch einer Pull-Anforderung bezeichnet. Nachdem Sie einen Commit für diese Änderungen durchgeführt und sie per Push auf das Repository übertragen haben, können Sie eine Pull-Anforderung erstellen, die den Inhalt dieses Branch (Quell-Branch) mit dem Branch vergleicht, mit dem Sie Ihre Änderungen nach dem Schließen der Pull-Anforderung zusammenführen möchten (Ziel-Branch). 

Sie können die AWS CodeCommit Konsole oder die verwenden AWS CLI , um Pull-Requests für Ihr Repository zu erstellen. 

**Topics**
+ [Erstellen Sie eine Pull-Anfrage (Konsole)](#how-to-create-pull-request-console)
+ [Erstellen Sie eine Pull-Anfrage ()AWS CLI](#how-to-create-pull-request-cli)

## Erstellen Sie eine Pull-Anfrage (Konsole)
<a name="how-to-create-pull-request-console"></a>

Sie können die CodeCommit Konsole verwenden, um eine Pull-Anfrage in einem CodeCommit Repository zu erstellen. Wenn Ihr Repository [mit Benachrichtigungen konfiguriert](how-to-repository-email.md) ist, erhalten Benutzer mit Abonnement eine E-Mail, wenn Sie eine Pull-Anforderung erstellen.

1. Öffnen Sie die CodeCommit Konsole unter [https://console.aws.amazon.com/codesuite/codecommit/home](https://console.aws.amazon.com/codesuite/codecommit/home).

1. Wählen Sie unter **Repositories (Repositorys)** den Namen des Repositorys aus, in dem Sie eine Pull-Anforderung erstellen möchten. 

1. Wählen Sie im Navigationsbereich **Pull Requests** aus.
**Tipp**  
Darüber hinaus können Sie Pull-Anforderungen über **Branches** und **Code** erstellen.

1. Wählen Sie **Create pull request** aus.   
![\[Erstellen einer Pull-Anfrage auf der Seite „Pull-Anfragen“ in der Konsole. CodeCommit\]](http://docs.aws.amazon.com/de_de/codecommit/latest/userguide/images/codecommit-pull-request-view.png)

1. Wählen Sie in **Create pull request** unter **Source** den Branch aus, der die zu prüfenden Änderungen enthält. 

1. Wählen Sie unter **Destination (Ziel)** den Branch aus, mit dem Sie Ihre Codeänderungen nach dem Schließen der Pull-Anforderung zusammenführen möchten. 

1. Wählen Sie **Compare** aus. Die beiden Branches werden verglichen und die Unterschiede zwischen ihnen angezeigt. Zudem wird eine Analyse durchgeführt, um zu ermitteln, ob die beiden Branches nach dem Schließen der Pull-Anforderung automatisch zusammengeführt werden können.

1. Prüfen Sie die Details des Vergleichs und die Änderungen, um sicherzustellen, dass die Pull-Anforderung die Änderungen und Commits enthält, die geprüft werden sollen. Andernfalls passen Sie Ihre Auswahl für Quell- und Ziel-Branch an und wählen erneut **Compare** aus.

1. Wenn Sie mit den Vergleichsergebnissen für die Pull-Anforderung zufrieden sind, geben Sie unter **Title (Titel)** einen kurzen, aussagekräftigen Namen für diese Prüfung an. Dieser Titel wird in der Liste der Pull-Anforderungen für das Repository angezeigt. 

1. (Optional) Unter **Description (Beschreibung)** können Sie angeben, wofür diese Prüfung vorgesehen ist, sowie weitere nützliche Informationen für Prüfer hinterlassen.

1. Wählen Sie **Erstellen** aus.  
![\[Erstellen einer Pull-Anforderung\]](http://docs.aws.amazon.com/de_de/codecommit/latest/userguide/images/codecommit-pull-request-create.png)

Ihre Pull-Anforderung wird in der Liste der Pull-Anforderungen für das Repository angezeigt. Wenn Sie [Benachrichtigungen konfiguriert](how-to-repository-email.md) haben, erhalten Abonnenten des Amazon SNS SNS-Themas eine E-Mail, um sie über die neu erstellte Pull-Anfrage zu informieren.

## Erstellen Sie eine Pull-Anfrage ()AWS CLI
<a name="how-to-create-pull-request-cli"></a>

Um AWS CLI Befehle mit zu verwenden CodeCommit, installieren Sie den AWS CLI. Weitere Informationen finden Sie unter [Befehlszeilenreferenz](cmd-ref.md). 

**Um den zu verwenden AWS CLI , um einen Pull-Request in einem CodeCommit Repository zu erstellen**
+ Führen Sie den Befehl **create-pull-request** aus und geben Sie Folgendes an:
  + Name der Pull-Anforderung (mit der Option **--title**).
  + Beschreibung der Pull-Anforderung (mit der Option **--description**).
  + Liste der Ziele für den Befehl **create-pull-request**, einschließlich:
    + Der Name des CodeCommit Repositorys, in dem der Pull-Request erstellt wird (mit dem **repositoryName** Attribut).
    + Name des Branches, der die zu prüfenden Codeänderungen enthält, auch Quell-Branch genannt (mit dem Attribut **sourceReference**).
    + (Optional) Name des Branches, mit dem Sie Ihre Codeänderungen zusammenführen möchten (auch Ziel-Branch genannt), falls Sie sie nicht mit dem Standard-Branch zusammenführen möchten (mit dem Attribut **destinationReference**).
  + Einzigartiger, vom Client generierter Idempotenz-Token (mit der Option **--client-request-token**). 

  In diesem Beispiel wird eine Pull-Anfrage *Pronunciation difficulty analyzer* mit dem Namen und einer Beschreibung erstellt*Please review these changes by Tuesday*, die auf den *jane-branch* Quell-Branch abzielt. Der Pull-Request soll mit dem Standard-Branch *main* in einem CodeCommit Repository mit dem Namen zusammengeführt werden`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 
  ```

# Erstellen Sie eine Genehmigungsregel für eine Pull-Anfrage
<a name="how-to-create-pull-request-approval-rule"></a>

Durch das Erstellen von Genehmigungsregeln für Pull-Anforderungen wird die Qualität des Codes sichergestellt, weil Benutzer die Pull-Anforderung genehmigen müssen, bevor der Code im Ziel-Branch zusammengeführt werden kann. Sie können die Anzahl der Benutzer angeben, die eine Pull-Anforderung genehmigen müssen. Sie können auch einen Genehmigungs-Pool von Benutzern für die Regel angeben. In diesem Fall werden nur Genehmigungen dieser Benutzer auf die Anzahl der erforderlichen Genehmigungen für die Regel angerechnet. 

**Anmerkung**  
Sie können auch Vorlagen für Genehmigungsregeln erstellen, mit deren Hilfe Sie die repositoryübergreifende Erstellung von Genehmigungsregeln automatisieren können, die für jeden Pull Request gelten. Weitere Informationen finden Sie unter [Arbeiten mit Genehmigungsregelvorlagen](approval-rule-templates.md).

Sie können die AWS CodeCommit Konsole oder die verwenden AWS CLI , um Genehmigungsregeln für Ihr Repository zu erstellen. 

**Topics**
+ [Erstellen Sie eine Genehmigungsregel für eine Pull-Anfrage (Konsole)](#how-to-create-pull-request-approval-rule-console)
+ [Erstellen Sie eine Genehmigungsregel für eine Pull-Anfrage ()AWS CLI](#how-to-create-pull-request-approval-rule-cli)

## Erstellen Sie eine Genehmigungsregel für eine Pull-Anfrage (Konsole)
<a name="how-to-create-pull-request-approval-rule-console"></a>

Sie können die CodeCommit Konsole verwenden, um eine Genehmigungsregel für eine Pull-Anfrage in einem CodeCommit Repository zu erstellen. 

1. Öffnen Sie die CodeCommit Konsole unter [https://console.aws.amazon.com/codesuite/codecommit/home](https://console.aws.amazon.com/codesuite/codecommit/home).

1. Wählen Sie unter **Repositories (Repositorys)** den Namen des Repositorys aus, in dem eine Genehmigungsregel für eine Pull-Anforderung erstellt werden soll. 

1. Wählen Sie im Navigationsbereich **Pull Requests** aus.

1. Wählen Sie in der Liste die Pull-Anforderung aus, für die Sie eine Genehmigungsregel erstellen möchten. Sie können Genehmigungsregeln nur für offene Pull-Anforderungen erstellen.  
![\[Eine Liste von Pull-Requests für ein Repository in der Konsole. CodeCommit\]](http://docs.aws.amazon.com/de_de/codecommit/latest/userguide/images/codecommit-pull-request-view.png)

1. Wählen Sie in der Pull-Anforderung **Approvals (Genehmigungen)** und dann **Create approval rule (Genehmigungsregel erstellen)** aus. 

1. Geben Sie in das Feld **Rule name (Regelname)** einen aussagekräftigen Namen ein. Wenn Sie z. B. möchten, dass eine Pull-Anforderung von zwei Personen genehmigt werden muss, bevor sie zusammengeführt werden kann, können Sie die Regel beispielsweise **Require two approvals before merge** nennen. 
**Anmerkung**  
Sie können den Namen einer Genehmigungsregel nicht mehr ändern, nachdem sie erstellt wurde.

   Geben Sie in das Feld **Number of approvals needed (Anzahl erforderlicher Genehmigungen)** die gewünschte Anzahl ein. Der Standardwert ist 1.   
![\[Erstellen einer Genehmigungsregel für eine Pull-Anforderung\]](http://docs.aws.amazon.com/de_de/codecommit/latest/userguide/images/codecommit-create-approval-rule.png)

1. (Optional) Wenn Sie voraussetzen möchten, dass die Genehmigungen für eine Pull-Anforderung von einer bestimmten Gruppe von Benutzern stammen, wählen Sie unter **Approval rule members (Genehmigungsregelmitglieder)** die Option **Add (Hinzufügen)** aus. Wählen Sie unter **Approver type (Genehmigertyp)** eine der folgenden Optionen aus: 
   + **IAM-Benutzername oder angenommene Rolle**: Diese Option füllt die AWS Konto-ID automatisch mit dem Konto aus, mit dem Sie sich angemeldet haben, und erfordert nur einen Namen. Sie kann sowohl für IAM-Benutzer als auch für Benutzer mit Verbundzugriff verwendet werden, deren Name mit dem angegebenen Namen übereinstimmt. Dies ist eine sehr leistungsstarke Option, die ein hohes Maß an Flexibilität bietet. Wenn Sie beispielsweise mit dem Amazon Web Services Services-Konto 123456789012 angemeldet sind und diese Option wählen und Sie angeben**Mary\$1Major**, dass alle folgenden Informationen als Genehmigungen von diesem Benutzer gezählt werden:
     + Ein IAM-Benutzer im Konto () `arn:aws:iam::123456789012:user/Mary_Major`
     + Ein Verbundbenutzer, der in IAM als Mary\$1Major () identifiziert wurde `arn:aws:sts::123456789012:federated-user/Mary_Major`

     Diese Option erkennt keine aktive Sitzung eines Benutzers, der die Rolle **CodeCommitReview** angenommen hat und den Rollensitzungsnamen Mary\$1Major (`arn:aws:sts::123456789012:assumed-role/CodeCommitReview/Mary_Major`) verwendet, sofern Sie kein Platzhalterzeichen angegeben (`*Mary_Major`). Sie können den Rollennamen auch explizit angeben (`CodeCommitReview/Mary_Major`).
   + **Vollqualifizierter ARN**: Mit dieser Option können Sie den vollqualifizierten Amazon-Ressourcennamen (ARN) des IAM-Benutzers oder der IAM-Rolle angeben. Diese Option unterstützt auch angenommene Rollen, die von anderen AWS Diensten verwendet werden, wie z. B. AWS Lambda und AWS CodeBuild. Bei angenommenen Rollen sollte das ARN-Format bei Rollen „`arn:aws:sts::AccountID:assumed-role/RoleName`“ und bei Funktionen „`arn:aws:sts::AccountID:assumed-role/FunctionName`“ sein.

   Wenn Sie als Genehmigertyp den **IAM-Benutzernamen oder die angenommene Rolle** ausgewählt haben, geben Sie im Feld **Wert** den Namen des IAM-Benutzers oder der IAM-Rolle oder den vollqualifizierten ARN des Benutzers oder der Rolle ein. Wählen Sie erneut **Add (Hinzufügen)** aus, um weitere Benutzer oder Rollen hinzuzufügen, bis Sie alle Benutzer oder Rollen hinzugefügt haben, deren Genehmigungen auf die Anzahl der erforderlichen Genehmigungen angerechnet werden sollen. 

   Für beide Genehmigertypen können Platzhalterzeichen (\$1) in den Werten verwendet werden. Wenn Sie beispielsweise die Option „**IAM-Benutzername“ oder „Angenommene Rolle**“ wählen und angeben, dass alle Benutzer**CodeCommitReview/\$1**, die die Rolle von annehmen, im **CodeCommitReview** Genehmigungspool gezählt werden. Ihre individuellen Rollensitzungsnamen werden auf die erforderliche Anzahl von Genehmigern angerechnet. Auf diese Weise zählen sowohl Mary\$1Major als auch Li\$1Juan als Genehmigungen, wenn sie angemeldet sind und die Rolle `CodeCommitReview` annehmen. [Weitere Informationen zu IAM ARNs, Platzhaltern und Formaten finden Sie unter IAM-Identifikatoren.](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-arns)
**Anmerkung**  
Genehmigungsregeln unterstützen keine kontoübergreifenden Genehmigungen.

1. Wählen Sie nach dem Konfigurieren der Genehmigungsregel **Submit (Senden)**.

 

## Erstellen Sie eine Genehmigungsregel für eine Pull-Anfrage ()AWS CLI
<a name="how-to-create-pull-request-approval-rule-cli"></a>

Um AWS CLI Befehle mit zu verwenden CodeCommit, installieren Sie den AWS CLI. Weitere Informationen finden Sie unter [Befehlszeilenreferenz](cmd-ref.md). 

## Um eine Genehmigungsregel für eine Pull-Anfrage in einem CodeCommit Repository zu erstellen

+ Führen Sie den Befehl **create-pull-request-approval-rule** aus und geben Sie Folgendes an:
  + ID der Pull-Anforderung (mit der Option **--id**).
  + Name der Genehmigungsregel (mit der Option **--approval-rule-name**).
  + Inhalt der Genehmigungsregel (mit der Option **--approval-rule-content**).

  Wenn Sie die Genehmigungsregel erstellen, können Sie Genehmiger in einem Genehmigungs-Pool auf zwei Arten angeben:
  + **CodeCommitApprovers**: Für diese Option sind nur ein Amazon Web Services Services-Konto und eine Ressource erforderlich. Sie kann sowohl für IAM-Benutzer als auch für Benutzer mit Verbundzugriff verwendet werden, deren Name mit dem angegebenen Ressourcennamen übereinstimmt. Dies ist eine sehr leistungsstarke Option, die ein hohes Maß an Flexibilität bietet. Wenn Sie beispielsweise das Amazon Web Services Services-Konto 123456789012 und angeben**Mary\$1Major**, werden alle folgenden Angaben als Genehmigungen gezählt, die von diesem Benutzer kommen:
    + Ein IAM-Benutzer im Konto () `arn:aws:iam::123456789012:user/Mary_Major`
    + Ein Verbundbenutzer, der in IAM als Mary\$1Major () identifiziert wurde `arn:aws:sts::123456789012:federated-user/Mary_Major`

    Diese Option erkennt keine aktive Sitzung eines Benutzers, der die Rolle **CodeCommitReview** angenommen hat und den Rollensitzungsnamen Mary\$1Major (`arn:aws:sts::123456789012:assumed-role/CodeCommitReview/Mary_Major`) verwendet, sofern Sie kein Platzhalterzeichen angegeben (`*Mary_Major`).
  + **Vollqualifizierter ARN**: Mit dieser Option können Sie den vollqualifizierten Amazon-Ressourcennamen (ARN) des IAM-Benutzers oder der IAM-Rolle angeben. 

  [Weitere Informationen zu IAM ARNs, Platzhaltern und Formaten finden Sie unter IAM-Identifikatoren.](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-arns)

  Im folgenden Beispiel wird eine Genehmigungsregel namens `Require two approved approvers` für eine Pull-Anforderung mit der ID `27` erstellt. Die Regel gibt an, dass zwei Genehmigungen aus einem Genehmigungs-Pool erforderlich sind. Der Pool umfasst alle Benutzer, die auf das `123456789012` Amazon Web Services Services-Konto zugreifen CodeCommit und dessen Rolle übernehmen. **CodeCommitReview** Es umfasst auch entweder einen IAM-Benutzer oder einen Verbundbenutzer mit `Nikhil_Jayashankar` demselben Amazon Web Services Services-Konto:

  ```
  aws codecommit create-pull-request-approval-rule --pull-request-id 27 --approval-rule-name "Require two approved approvers" --approval-rule-content "{\"Version\": \"2018-11-08\",\"Statements\": [{\"Type\": \"Approvers\",\"NumberOfApprovalsNeeded\": 2,\"ApprovalPoolMembers\": [\"CodeCommitApprovers:123456789012:Nikhil_Jayashankar\", \"arn:aws:sts::123456789012:assumed-role/CodeCommitReview/*\"]}]}"
  ```

# Pull-Requests in einem AWS CodeCommit Repository anzeigen
<a name="how-to-view-pull-request"></a>

Sie können die AWS CodeCommit Konsole oder die verwenden AWS CLI , um Pull-Requests für Ihr Repository anzuzeigen. Standardmäßig sehen Sie nur offene Pull-Anforderungen. Sie können jedoch den Filter ändern und alle Pull-Anforderungen, nur geschlossene Anforderungen, nur von Ihnen erstellte Pull-Anforderungen usw. anzeigen. 

**Topics**
+ [Pull-Requests anzeigen (Konsole)](#how-to-view-pull-request-console)
+ [Pull-Requests anzeigen (AWS CLI)](#how-to-view-pull-request-cli)

## Pull-Requests anzeigen (Konsole)
<a name="how-to-view-pull-request-console"></a>

Sie können die AWS CodeCommit Konsole verwenden, um eine Liste von Pull-Requests in einem CodeCommit Repository anzuzeigen. Durch Änderung des Filters können Sie die Listenanzeige so ändern, dass nur eine bestimmte Gruppe von Pull-Anforderungen angezeigt wird. Beispielsweise können Sie eine Liste mit Pull-Anforderungen anzeigen, die Sie erstellt haben und deren Status **Open** ist, oder Sie können einen anderen Filter wählen und von Ihnen erstellte Pull-Anforderungen mit dem Status **Closed** ansehen.

1. Öffne die CodeCommit Konsole unter [https://console.aws.amazon.com/codesuite/codecommit/home](https://console.aws.amazon.com/codesuite/codecommit/home).

1. Wählen Sie unter **Repositories (Repositorys)** den Namen des Repositorys aus, in dem Sie Pull-Anforderungen anzeigen möchten. 

1. Wählen Sie im Navigationsbereich **Pull Requests** aus.

1. Standardmäßig wird eine Liste aller offenen Pull-Anforderungen angezeigt.   
![\[In der Konsole werden Pull-Anfragen angezeigt. AWS CodeCommit\]](http://docs.aws.amazon.com/de_de/codecommit/latest/userguide/images/codecommit-pull-request-view-list.png)

1. Um den Anzeigefilter zu ändern, wählen Sie aus der Liste der verfügbaren Filter aus:
   + **Open pull requests (Offene Pull-Anforderungen)** (Standard): Zeigt alle Pull-Anforderungen mit dem Status **Open (Offen)** an.
   + **All pull requests (Alle Pull-Anforderungen)**: Zeigt alle Pull-Anforderungen an.
   + **All closed requests (Alle geschlossenen Pull-Anforderungen)**: Zeigt alle Pull-Anforderungen mit dem Status **Closed (Geschlossen)** an.
   + **My pull requests (Meine Pull-Anforderungen)**: Zeigt alle von Ihnen erstellten Pull-Anforderungen unabhängig vom Status an. Es werden keine Überprüfungen angezeigt, die Sie kommentiert haben, oder an denen Sie anderweitig beteiligt waren.
   + **My open pull requests (Meine offenen Pull-Anforderungen)**: Zeigt alle von Ihnen erstellten Pull-Anforderungen mit dem Status **Open (Offen)** an.
   + **My closed pull requests (Meine geschlossenen Pull-Anforderungen)**: Zeigt alle von Ihnen erstellten Pull-Anforderungen mit dem Status **Closed (Geschlossen)** an.

1. Wenn Sie eine Pull-Anforderung in der angezeigten Liste finden, die Sie anzeigen möchten, wählen Sie diese aus.

## Pull-Requests anzeigen (AWS CLI)
<a name="how-to-view-pull-request-cli"></a>

Um AWS CLI Befehle mit zu verwenden CodeCommit, installieren Sie den AWS CLI. Weitere Informationen finden Sie unter [Befehlszeilenreferenz](cmd-ref.md). 

Gehen Sie wie folgt vor, AWS CLI um Pull-Requests in einem CodeCommit Repository anzuzeigen.

1. Um eine Liste mit Pull-Anforderungen in einem Repository anzuzeigen, führen Sie den Befehl **list-pull-requests** aus. Geben Sie dabei Folgendes an:
   + Der Name des CodeCommit Repositorys, in dem Sie Pull-Requests anzeigen möchten (mit der **--repository-name** Option).
   + (Optional) Den Status der Pull-Anforderung (mit der Option **--pull-request-status**).
   + (Optional) Der Amazon-Ressourcenname (ARN) des IAM-Benutzers, der die Pull-Anfrage erstellt hat (mit der **--author-arn** Option).
   + (Optional) Ein Aufzählungs-Token, das verwendet werden kann, um Ergebnisstapel zurückzugeben (mit der Option **--next-token**). 
   + (Optional) Eine Einschränkung in Bezug auf die Anzahl der zurückgegebenen Ergebnisse pro Anforderung (mit der Option **--max-results**).

   Um beispielsweise Pull-Requests aufzulisten, die von einem IAM-Benutzer mit dem ARN *arn:aws:iam::111111111111:user/Li\$1Juan* und dem Status von erstellt wurden, *CLOSED* in einem CodeCommit Repository mit dem Namen`MyDemoRepo`:

   ```
   aws codecommit list-pull-requests --author-arn arn:aws:iam::111111111111:user/Li_Juan --pull-request-status CLOSED --repository-name MyDemoRepo 
   ```

   Ist der Befehl erfolgreich, wird eine Ausgabe zurückgegeben, die der folgenden ähnelt:

   ```
   {
      "nextToken": "",
      "pullRequestIds": ["2","12","16","22","23","35","30","39","47"]
   }
   ```

   Pull-Requests IDs werden in der Reihenfolge der letzten Aktivität angezeigt.

1. Um Details zu einer bestimmten Pull-Anforderung anzuzeigen, führen Sie den Befehl **get-pull-request** mit der Option **--pull-request-id** aus, wobei Sie die ID der Pull-Anforderung angeben. Zum Beispiel, um Informationen über eine Pull-Anfrage mit der folgenden ID anzuzeigen*27*:

   ```
   aws codecommit get-pull-request --pull-request-id 27
   ```

   Ist der Befehl erfolgreich, wird eine Ausgabe zurückgegeben, die der folgenden ähnelt:

   ```
   {
       "pullRequest": {
           "approvalRules": [
               {
                   "approvalRuleContent": "{\"Version\": \"2018-11-08\",\"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",
                   "ruleContentSha256": "4711b576EXAMPLE"
               }
           ],
           "lastActivityDate": 1562619583.565,
           "pullRequestTargets": [
               {
                   "sourceCommit": "ca45e279EXAMPLE",
                   "sourceReference": "refs/heads/bugfix-1234",
                   "mergeBase": "a99f5ddbEXAMPLE",
                   "destinationReference": "refs/heads/main",
                   "mergeMetadata": {
                       "isMerged": false
                   },
                   "destinationCommit": "2abfc6beEXAMPLE",
                   "repositoryName": "MyDemoRepo"
               }
           ],
           "revisionId": "e47def21EXAMPLE",
           "title": "Quick fix for bug 1234",
           "authorArn": "arn:aws:iam::123456789012:user/Nikhil_Jayashankar",
           "clientRequestToken": "d8d7612e-EXAMPLE",
           "creationDate": 1562619583.565,
           "pullRequestId": "27",
           "pullRequestStatus": "OPEN"
       }
   }
   ```

1. <a name="get-pull-request-approval-state"></a>Um Genehmigungen für eine Pull-Anforderung anzuzeigen, führen Sie den Befehl **get-pull-request-approval-state** aus. Geben Sie dabei Folgendes an:
   + ID der Pull-Anforderung (mit der Option **--pull-request-id**).
   + Revisions-ID der Pull-Anforderung (mit **--revision-id option)**). Sie können die aktuelle Revisions-ID für eine Pull-Anforderung mit dem Befehl [get-pull-request](#get-pull-request) abrufen.

   Um beispielsweise Genehmigungen für einen Pull Request mit der ID *8* und der Revision-ID wie folgt anzuzeigen: *9f29d167EXAMPLE*

   ```
   aws codecommit get-pull-request-approval-state --pull-request-id 8 --revision-id 9f29d167EXAMPLE
   ```

   Ist der Befehl erfolgreich, wird eine Ausgabe zurückgegeben, die der folgenden ähnelt:

   ```
   {
       "approvals": [
           {
               "userArn": "arn:aws:iam::123456789012:user/Mary_Major",
               "approvalState": "APPROVE"
           }
       ]
   }
   ```

1. Um Ereignisse in einer Pull-Anforderung anzuzeigen, führen Sie den Befehl **describe-pull-request-events** mit der Option **--pull-request-id** aus, wobei Sie die ID der Pull-Anforderung angeben. Um beispielsweise die Ereignisse für eine Pull-Anfrage mit der folgenden ID anzuzeigen: *8*

   ```
   aws codecommit describe-pull-request-events --pull-request-id 8
   ```

   Ist der Befehl erfolgreich, wird eine Ausgabe zurückgegeben, die der folgenden ähnelt:

   ```
   {
       "pullRequestEvents": [
           {
               "pullRequestId": "8",
               "pullRequestEventType": "PULL_REQUEST_CREATED",
               "eventDate": 1510341779.53,
               "actor": "arn:aws:iam::111111111111:user/Zhang_Wei"
           },
           {
               "pullRequestStatusChangedEventMetadata": {
                   "pullRequestStatus": "CLOSED"
               },
               "pullRequestId": "8",
               "pullRequestEventType": "PULL_REQUEST_STATUS_CHANGED",
               "eventDate": 1510341930.72,
               "actor": "arn:aws:iam::111111111111:user/Jane_Doe"
           }
       ]
   }
   ```

1. Wenn Sie sehen möchten, ob für eine Pull-Anforderung Konflikte für die Zusammenführung vorliegen, führen Sie den Befehl **get-merge-conflicts** aus. Geben Sie dabei Folgendes an:
   + Der Name des CodeCommit Repositorys (mit der **--repository-name** Option).
   + Branch, Tag, HEAD oder eine andere vollständig qualifizierte Referenz für die Quelle der Änderungen, die bei der Bewertung der Zusammenführung verwendet werden soll (mit der Option **--source-commit-specifier**).
   + Branch, Tag, HEAD oder eine andere vollständig qualifizierte Referenz für das Ziel der Änderungen, das bei der Bewertung der Zusammenführung verwendet werden soll (mit der Option **--destination-commit-specifier**).
   + Die zu verwendende Zusammenführungsoption (mit der Option **--merge-option**). 

   Um beispielsweise herauszufinden, ob es Zusammenführungskonflikte zwischen der Spitze eines Quell-Branches mit dem Namen *my-feature-branch* und einem Ziel-Branch mit dem Namen *main* eines Repositorys mit dem Namen gibt`MyDemoRepo`:

   ```
   aws codecommit get-merge-conflicts --repository-name MyDemoRepo --source-commit-specifier my-feature-branch --destination-commit-specifier main --merge-option FAST_FORWARD_MERGE
   ```

   Ist der Befehl erfolgreich, wird eine Ausgabe zurückgegeben, die wie folgt aussehen sollte:

   ```
   {
       "destinationCommitId": "fac04518EXAMPLE",
       "mergeable": false,
       "sourceCommitId": "16d097f03EXAMPLE"
   }
   ```

# Überprüfen einer Pull-Anforderung
<a name="how-to-review-pull-request"></a>

Du kannst die AWS CodeCommit Konsole verwenden, um die in einer Pull-Anfrage enthaltenen Änderungen zu überprüfen. Sie können der Anforderung, den Dateien und einzelnen Codezeilen Kommentare hinzufügen. Sie können auch auf Kommentare von anderen Benutzern antworten. Wenn Ihr Repository [mit Benachrichtigungen konfiguriert](how-to-repository-email.md) ist, erhalten Sie E-Mails, wenn Benutzer auf Ihre Kommentare antworten oder eine Pull-Anforderung kommentieren.

Sie können die verwenden AWS CLI , um eine Pull-Anfrage zu kommentieren und auf Kommentare zu antworten. Um die Änderungen zu überprüfen, müssen Sie die CodeCommit Konsole, den **git diff** Befehl oder ein Diff-Tool verwenden.

**Topics**
+ [Überprüfen Sie eine Pull-Anfrage (Konsole)](#how-to-review-pull-request-console)
+ [Überprüfen Sie die Pull-Requests (AWS CLI)](#how-to-review-pull-request-cli)

## Überprüfen Sie eine Pull-Anfrage (Konsole)
<a name="how-to-review-pull-request-console"></a>

Sie können die CodeCommit Konsole verwenden, um eine Pull-Anfrage in einem CodeCommit Repository zu überprüfen. 

1. Öffne die CodeCommit Konsole unter [https://console.aws.amazon.com/codesuite/codecommit/home](https://console.aws.amazon.com/codesuite/codecommit/home).

1. Wählen Sie im Bereich **Repositories (Repositorys)** den Namen des Repositorys aus. 

1. Wählen Sie im Navigationsbereich **Pull requests (Pull-Anforderungen)** aus.

1. Standardmäßig wird eine Liste aller offenen Pull-Anforderungen angezeigt. Wählen Sie die offene Pull-Anforderung aus, die Sie überprüfen möchten.   
![\[Öffnen Sie die in der Konsole angezeigten Pull-Requests. CodeCommit\]](http://docs.aws.amazon.com/de_de/codecommit/latest/userguide/images/codecommit-pull-request-view-list.png)
**Anmerkung**  
Sie können eine geschlossene oder zusammengeführte Pull-Anforderung kommentieren, aber Sie können sie nicht zusammenführen oder erneut öffnen.

1. Wählen Sie in der Pull-Anforderung **Changes**.

1. Führen Sie eine der folgenden Aktionen aus:
   + Um einen Kommentar zur Pull-Anforderung insgesamt hinzuzufügen, geben Sie unter **Comments on changes (Kommentare zu Änderungen)**, **New comment (Neuer Kommentar)** einen Kommentar ein und wählen Sie dann **Save (Speichern)** aus. Sie können [Markdown](https://docs.aws.amazon.com/general/latest/gr/aws-markdown.html) verwenden oder Ihren Kommentar als Klartext eingeben.  
![\[Ein allgemeiner Kommentar zu den Änderungen in einer Pull-Anforderung.\]](http://docs.aws.amazon.com/de_de/codecommit/latest/userguide/images/codecommit-commenting-changecomment.png)
   + Um einer Datei im Commit einen Kommentar hinzuzufügen, suchen Sie in **Changes** den Namen der Datei. Wählen Sie das Kommentarsymbol ![\[The comment bubble icon that that indicates that you can leave a comment on that line of code.\]](http://docs.aws.amazon.com/de_de/codecommit/latest/userguide/images/codecommit-commentbubble.png) neben dem Dateinamen aus, geben Sie einen Kommentar ein und wählen Sie dann **Save (Speichern)** aus.   
![\[Hinzufügen eines Kommentars zu einer Datei in einer Pull-Anforderung.\]](http://docs.aws.amazon.com/de_de/codecommit/latest/userguide/images/codecommit-commenting-addfilecomment.png)
   + Um einer geänderte Zeile in der Pull-Anfrage einen Kommentar hinzuzufügen, suchen Sie in **Changes (Änderungen)** die Zeile, die kommentiert werden soll. Wählen Sie das für die Zeile angezeigte Kommentarsymbol ![\[The comment bubble icon that that indicates that you can leave a comment on that line of code.\]](http://docs.aws.amazon.com/de_de/codecommit/latest/userguide/images/codecommit-commentbubble.png) aus, geben Sie einen Kommentar ein und wählen Sie dann **Save (Speichern)** aus.   
![\[Hinzufügen eines Kommentars zu einer Zeile in einer Pull-Anforderung.\]](http://docs.aws.amazon.com/de_de/codecommit/latest/userguide/images/codecommit-pull-request-comment.png)

1. Zum Beantworten von Kommentaren im Commit wählen Sie unter **Changes** oder **Activity** die Option **Reply** aus. Sie können mit Text und Emojis antworten.   
![\[Hinzufügen von Antworten und Emoji-Reaktionen zu einem Kommentar.\]](http://docs.aws.amazon.com/de_de/codecommit/latest/userguide/images/codecommit-commenting-commenttab.png)

   Du kannst dir die Namen der Personen ansehen, die mit einer bestimmten Emoji-Reaktion geantwortet haben, indem du sie auswählst. Um alle Emoji-Reaktionen und Informationen darüber zu sehen, wer mit welchen Emojis geantwortet hat, wähle Alle Reaktionen **anzeigen**. Wenn du mit einem Emoji auf einen Kommentar geantwortet hast, wird deine Antwort im Symbol für die Emoji-Reaktionsschaltfläche angezeigt.
**Anmerkung**  
Die Anzahl der Reaktionen, die in der Konsole angezeigt werden, entspricht dem Zeitpunkt, zu dem die Seite geladen wurde. Aktuellste Informationen zur Anzahl der Emoji-Reaktionen erhalten Sie, wenn Sie entweder die Seite aktualisieren oder „**Alle Reaktionen anzeigen**“ wählen.  
![\[Informationen über Benutzer anzeigen, die auf einen Kommentar mit einer Emoji-Reaktion geantwortet haben.\]](http://docs.aws.amazon.com/de_de/codecommit/latest/userguide/images/codecommit-comment-view-reaction.png)

1. (Optional) Um auf eine von Amazon CodeGuru Reviewer erstellte Empfehlung zu antworten und auch Feedback zur Qualität der Empfehlung zu geben, wählen Sie **Antworten**. Verwenden Sie die Reaktionsschaltflächen, um allgemein anzugeben, ob Sie die Empfehlung genehmigen oder ablehnen. Verwenden Sie das Kommentarfeld, um weitere Details zur Reaktion anzugeben.
**Anmerkung**  
Amazon CodeGuru Reviewer ist ein automatisierter Code-Review-Service, der mithilfe von Programmanalyse und maschinellem Lernen häufig auftretende Probleme erkennt und Korrekturen in Ihrem Java- oder Python-Code empfiehlt.  
Sie sehen Amazon CodeGuru Reviewer-Kommentare nur, wenn Sie das Repository mit Amazon CodeGuru Reviewer verknüpft haben, wenn die Analyse abgeschlossen ist und wenn der Code in der Pull-Anfrage Java- oder Python-Code ist. Weitere Informationen finden Sie unter [Ein AWS CodeCommit Repository mit Amazon CodeGuru Reviewer verknüpfen oder die Zuordnung aufheben](how-to-amazon-codeguru-reviewer.md).
Kommentare von Amazon CodeGuru Reviewer werden nur dann auf der Registerkarte „**Änderungen**“ angezeigt, wenn sie zur letzten Version der Pull-Anfrage abgegeben wurden. Sie werden immer auf der Registerkarte **Aktivität** angezeigt.
Sie können zwar mit allen verfügbaren Emoji-Reaktionen auf Empfehlungen von Amazon CodeGuru Rezensenten antworten, aber nur Emoji-Reaktionen mit Daumen hoch und Daumen runter werden verwendet, um die Nützlichkeit der Empfehlung zu bewerten.   
![\[Eine Empfehlung, die von Amazon CodeGuru Reviewer während eines laufenden Überprüfungsauftrags erstellt wurde.\]](http://docs.aws.amazon.com/de_de/codecommit/latest/userguide/images/codecommit-pull-request-reply-bot.png)

1. Um die in einer Pull-Anforderung vorgenommenen Änderungen zu genehmigen, wählen Sie **Approve (Genehmigen)**. 
**Anmerkung**  
Sie können einen von Ihnen erstellten Pull-Request nicht genehmigen.

   Genehmigungen, Genehmigungsregeln für eine Pull-Anforderung und von Genehmigungsregelvorlagen erstellte Genehmigungsregeln sehen Sie unter **Approvals (Genehmigungen)**. Wenn Sie die Pull-Anforderung anschließend nicht genehmigen möchten, können Sie die Option **Revoke approval (Genehmigung widerrufen)** auswählen.
**Anmerkung**  
Sie können Genehmigungen nur für offene Pull-Anforderungen bestätigen oder widerrufen. Sie können keine Genehmigung für eine Pull-Anforderung bestätigen oder widerrufen, die den Status „Merged (Zusammengeführt)“ oder „Closed (Geschlossen)“ hat.  
![\[Genehmigungen und Genehmigungsregeln in einer Pull-Anforderung\]](http://docs.aws.amazon.com/de_de/codecommit/latest/userguide/images/codecommit-approval-rule-met.png)

## Überprüfen Sie die Pull-Requests (AWS CLI)
<a name="how-to-review-pull-request-cli"></a>

Um AWS CLI Befehle mit zu verwenden CodeCommit, installieren Sie den AWS CLI. Weitere Informationen finden Sie unter [Befehlszeilenreferenz](cmd-ref.md). 

Sie können Pull-Requests mit den folgenden AWS CLI Befehlen überprüfen:
+ [**post-comment-for-pull-request**](#post-comment-reply), um einen Kommentar zu einer Pull-Anfrage hinzuzufügen
+ [**get-comments-for-pull-request**](#get-comments-for-pull-request), um Kommentare zu sehen, die zu einer Pull-Anfrage hinterlassen wurden
+ [**update-pull-request-approval-state**](#update-pull-request-approval-state), um die Genehmigung für einen Pull-Request zu genehmigen oder zu widerrufen
+ [**post-comment-reply**](#post-comment-reply), um auf einen Kommentar in einer Pull-Anfrage zu antworten

Du kannst Emojis auch mit Kommentaren in einer Pull-Anfrage mit den folgenden Befehlen verwenden: 
+ Um auf einen Kommentar mit einem Emoji zu antworten, führe den Befehl aus. [**put-comment-reaction**](how-to-commit-comment.md#how-to-commit-comment-cli-commit-reply-emoji)
+ Um Emoji-Reaktionen auf einen Kommentar anzuzeigen, führe den Befehl aus. [**get-comment-reactions**](how-to-commit-comment.md#how-to-commit-comment-cli-commit-emoji-view)

**Um den zu verwenden AWS CLI , um Pull-Requests in einem CodeCommit Repository zu überprüfen**

1. Um einer Pull-Anforderung in einem Repository einen Kommentar hinzuzufügen, führen Sie den Befehl **post-comment-for-pull-request** aus. Geben Sie dabei Folgendes an:
   + ID der Pull-Anforderung (mit der Option **--pull-request-id**).
   + Den Namen des Repositorys, das die Pull-Anforderung enthält (mit der Option **--repository-name**).
   + Die vollständige Commit-ID des Commits im Ziel-Branch, in dem die Pull-Anforderung zusammengeführt wird (mit der Option **--before-commit-id**).
   + Die vollständige Commit-ID des Commits im Quell-Branch, die die aktuelle Spitze des Branch für die Pull-Anforderung darstellt, wenn Sie den Kommentar posten (mit der Option **--after-commit-id**).
   + Einzigartiger, vom Client generierter Idempotenz-Token (mit der Option **--client-request-token**).
   + Der Inhalt Ihres Kommentars (mit der Option **--content**).
   + Eine Liste der Speicherortangaben, wo der Kommentar abgelegt werden soll, unter anderem:
     + Der Name der zu vergleichenden Datei, einschließlich der Erweiterung und des Unterverzeichnisses (mit dem Attribut **filePath**).
     + Die Zeilennummer der Änderung innerhalb einer verglichenen Datei (mit dem Attribut **filePosition**).
     + Die Angabe, ob der Kommentar zu der Änderung „vor“ oder „nach“ dem Vergleich zwischen den Quell- und Ziel-Branches steht (mit dem Attribut **relativeFileVersion**).

   Verwenden Sie diesen Befehl beispielsweise, um der *ahs\$1count.py* Datei einen Kommentar *"These don't appear to be used anywhere. Can we remove them?"* zur Änderung in einer Pull-Anfrage mit der ID von *47* in einem Repository mit dem Namen hinzuzufügen*MyDemoRepo*.

   ```
   aws codecommit post-comment-for-pull-request --pull-request-id "47" --repository-name MyDemoRepo --before-commit-id 317f8570EXAMPLE --after-commit-id 5d036259EXAMPLE --client-request-token 123Example --content "These don't appear to be used anywhere. Can we remove them?" --location filePath=ahs_count.py,filePosition=367,relativeFileVersion=AFTER   
   ```

   Ist der Befehl erfolgreich, wird eine Ausgabe wie die folgende erzeugt.

   ```
   { 
            "afterBlobId": "1f330709EXAMPLE",
            "afterCommitId": "5d036259EXAMPLE",
            "beforeBlobId": "80906a4cEXAMPLE",
            "beforeCommitId": "317f8570EXAMPLE",
            "comment": {
                  "authorArn": "arn:aws:iam::111111111111:user/Saanvi_Sarkar",
                  "clientRequestToken": "123Example",
                  "commentId": "abcd1234EXAMPLEb5678efgh",
                  "content": "These don't appear to be used anywhere. Can we remove them?",
                  "creationDate": 1508369622.123,
                  "deleted": false,
                  "lastModifiedDate": 1508369622.123,
                  "callerReactions": [],
                  "reactionCounts": []
               }
                "location": { 
                  "filePath": "ahs_count.py",
                  "filePosition": 367,
                  "relativeFileVersion": "AFTER"
                },
            "repositoryName": "MyDemoRepo",
            "pullRequestId": "47"
    }
   ```

1. Zum Anzeigen von Kommentaren für eine Pull-Anforderung führen Sie den Befehl **get-comments-for-pull-request** aus. Geben Sie dabei Folgendes an:
   + Der Name des CodeCommit Repositorys (mit der `--repository-name` Option).
   + Die vom System generierte ID der Pull-Anforderung (mit der Option `--pull-request-id`).
   + (Optional) Ein Aufzählungs-Token zum Zurückgeben des nächsten Ergebnisstapels (mit der Option `--next-token`).
   + (Optional) Eine nicht negative ganze Zahl, um die Anzahl der zurückgegebenen Ergebnisse zu begrenzen (mit der Option `--max-results`).

   Verwenden Sie diesen Befehl beispielsweise, um Kommentare für eine Pull-Anforderung mit der ID 42 anzuzeigen.

   ```
   aws codecommit get-comments-for-pull-request --pull-request-id 42
   ```

   Ist der Befehl erfolgreich, wird eine Ausgabe wie die folgende erzeugt.

   ```
   {
      "commentsForPullRequestData": [ 
         { 
            "afterBlobId": "1f330709EXAMPLE",
            "afterCommitId": "5d036259EXAMPLE",
            "beforeBlobId": "80906a4cEXAMPLE",
            "beforeCommitId": "317f8570EXAMPLE",
            "comments": [ 
               { 
                  "authorArn": "arn:aws:iam::111111111111:user/Saanvi_Sarkar",
                  "clientRequestToken": "",
                  "commentId": "abcd1234EXAMPLEb5678efgh",
                  "content": "These don't appear to be used anywhere. Can we remove them?",
                  "creationDate": 1508369622.123,
                  "deleted": false,
                  "lastModifiedDate": 1508369622.123,
                  "callerReactions": [],
                  "reactionCounts": 
                   {
                     "THUMBSUP" : 6,
                     "CONFUSED" : 1
                   }
               },
               {
                  "authorArn": "arn:aws:iam::111111111111:user/Li_Juan",
                  "clientRequestToken": "",
                  "commentId": "442b498bEXAMPLE5756813",
                  "content": "Good catch. I'll remove them.",
                  "creationDate": 1508369829.104,
                  "deleted": false,
                  "lastModifiedDate": 150836912.273,
                  "callerReactions": ["THUMBSUP"]
                  "reactionCounts": 
                   {
                     "THUMBSUP" : 14
                   }
                }
            ],
            "location": { 
               "filePath": "ahs_count.py",
               "filePosition": 367,
               "relativeFileVersion": "AFTER"
            },
            "repositoryName": "MyDemoRepo",
            "pullRequestId": "42"
         }
      ],
      "nextToken": "exampleToken"
   }
   ```

1. <a name="update-pull-request-approval-state"></a>Um die Genehmigung für eine Pull-Anforderung zu bestätigen oder zu widerrufen, führen Sie den Befehl **update-pull-request-approval-state** aus und geben Sie Folgendes an:
   + ID der Pull-Anforderung (mit der Option **--pull-request-id**).
   + Revisions-ID der Pull-Anforderung (mit **--revision-id option)**). Sie können die aktuelle Revisions-ID für eine Pull-Anforderung mit dem Befehl [get-pull-request](how-to-view-pull-request.md#get-pull-request) abrufen.
   + Der Genehmigungsstatus, den Sie zuweisen möchten (mit der Option **--approval-state**). Gültige Genehmigungsstatus sind `APPROVE` und `REVOKE`.

   Verwenden Sie diesen Befehl beispielsweise, um eine Pull-Anfrage mit der ID von *27* und der Revision-ID von zu genehmigen*9f29d167EXAMPLE*.

   ```
   aws codecommit update-pull-request-approval-state --pull-request-id 27 --revision-id 9f29d167EXAMPLE --approval-state "APPROVE"
   ```

   Bei erfolgreicher Ausführung gibt dieser Befehl nichts zurück.

1. Um eine Antwort auf einen Kommentar in einer Pull-Anforderung hinzuzufügen, führen Sie den Befehl **post-comment-reply** aus. Geben Sie dabei Folgendes an:
   + Die vom System generierte ID des Kommentars, auf den Sie antworten wollen (mit der Option **--in-reply-to**).
   + Einzigartiger, vom Client generierter Idempotenz-Token (mit der Option **--client-request-token**).
   + Der Inhalt Ihrer Antwort (mit der Option **--content**). 

    Verwenden Sie diesen Befehl beispielsweise, um die Antwort *"Good catch. I'll remove them."* auf den Kommentar mit der vom System generierten ID von hinzuzufügen. *abcd1234EXAMPLEb5678efgh* 

   ```
   aws codecommit post-comment-reply --in-reply-to abcd1234EXAMPLEb5678efgh --content "Good catch. I'll remove them." --client-request-token 123Example
   ```

   Ist der Befehl erfolgreich, wird eine Ausgabe wie die folgende erzeugt.

   ```
   { 
       "comment": {
           "authorArn": "arn:aws:iam::111111111111:user/Li_Juan",
           "clientRequestToken": "123Example",
           "commentId": "442b498bEXAMPLE5756813",
           "content": "Good catch. I'll remove them.",
           "creationDate": 1508369829.136,
           "deleted": false,
           "lastModifiedDate": 150836912.221,
           "callerReactions": [],
           "reactionCounts": []
       }
    }
   ```

# Aktualisieren einer Pull-Anforderung
<a name="how-to-update-pull-request"></a>

Sie können eine Pull-Anfrage mit weiteren Codeänderungen aktualisieren, indem Sie Commits in den Quell-Branch eines offenen Pull-Requests übertragen. Weitere Informationen finden Sie unter [Erstellen Sie einen Commit in AWS CodeCommit](how-to-create-commit.md).

Du kannst die AWS CodeCommit Konsole oder die verwenden AWS CLI , um den Titel oder die Beschreibung eines Pull-Requests zu aktualisieren. Möglicherweise möchten Sie den Titel oder die Beschreibung der Pull-Anfrage aus folgenden Gründen aktualisieren:
+ Andere Benutzer verstehen die Beschreibung nicht oder der ursprüngliche Titel ist irreführend.
+ Sie möchten, dass der Titel oder die Beschreibung die Änderungen berücksichtigt, die am Quell-Branch einer offenen Pull-Anforderung vorgenommen wurden.

## Aktualisiere eine Pull-Anfrage (Konsole)
<a name="how-to-update-pull-request-console"></a>

Sie können die CodeCommit Konsole verwenden, um den Titel und die Beschreibung einer Pull-Anfrage in einem CodeCommit Repository zu aktualisieren. Um den Code in der Pull-Anfrage zu aktualisieren, senden Sie Push-Commits an den Quell-Branch eines offenen Pull-Requests.

1. Öffne die CodeCommit Konsole unter [https://console.aws.amazon.com/codesuite/codecommit/home](https://console.aws.amazon.com/codesuite/codecommit/home).

1. Wählen Sie unter **Repositories (Repositorys)** den Namen des Repositorys aus, in dem Sie eine Pull-Anforderungen aktualisieren möchten. 

1. Wählen Sie im Navigationsbereich **Pull requests (Pull-Anforderungen)** aus.

1. Standardmäßig wird eine Liste aller offenen Pull-Anforderungen angezeigt. Wählen Sie die offene Pull-Anforderung aus, die Sie aktualisieren möchten.

1. Wählen Sie in der Pull-Anforderung **Details** und dann **Edit Details (Details bearbeiten)** zum Bearbeiten des Titels oder der Beschreibung aus.
**Anmerkung**  
Den Titel oder die Beschreibung einer geschlossenen oder zusammengeführten Pull-Anforderung können Sie nicht aktualisieren.

## Pull-Anfragen aktualisieren ()AWS CLI
<a name="how-to-update-pull-request-cli"></a>

Um AWS CLI Befehle mit zu verwenden CodeCommit, installieren Sie den AWS CLI. Weitere Informationen finden Sie unter [Befehlszeilenreferenz](cmd-ref.md). 

Auch folgende Befehle können interessant sein:
+ **[update-pull-request-approval-state](how-to-review-pull-request.md#update-pull-request-approval-state)**, um die Genehmigung für eine Pull-Anforderung zu gewähren oder zu widerrufen.
+ [**create-pull-request-approval-rule**](how-to-create-pull-request-approval-rule.md#how-to-create-pull-request-approval-rule-cli), um eine Genehmigungsregel für eine Pull-Anforderung zu erstellen.
+ [**delete-pull-request-approval-rule**](how-to-edit-delete-pull-request-approval-rule.md#delete-pull-request-approval-rule), um eine Genehmigungsregel für eine Pull-Anforderung zu löschen.
+ [Erstelle einen Commit dem AWS CLI](how-to-create-commit.md#how-to-create-commit-cli)oder[Einen Commit mit einem Git-Client erstellen](how-to-create-commit.md#how-to-create-commit-git), um zusätzliche Codeänderungen zu erstellen und in den Quell-Branch einer offenen Pull-Anfrage zu übertragen.

**Um den zu verwenden AWS CLI , um Pull-Requests in einem CodeCommit Repository zu aktualisieren**

1.  Um den Titel einer Pull-Anforderung in einem Repository zu aktualisieren, führen Sie den Befehl **update-pull-request-title** aus, wobei Sie Folgendes angeben:
   + ID der Pull-Anforderung (mit der Option **--pull-request-id**).
   + Den Titel der Pull-Anforderung (mit der Option **--title**).

   Um beispielsweise den Titel einer Pull-Anfrage mit der folgenden ID zu aktualisieren*47*:

   ```
   aws codecommit update-pull-request-title --pull-request-id 47 --title "Consolidation of global variables - updated review"  
   ```

1.  Um die Beschreibung einer Pull-Anforderung zu aktualisieren, führen Sie den Befehl **update-pull-request-description** aus, wobei Sie Folgendes angeben:
   + ID der Pull-Anforderung (mit der Option **--pull-request-id**).
   + Die Beschreibung (mit der **--description**-Option). 

    Um beispielsweise die Beschreibung einer Pull-Anfrage mit der folgenden ID zu aktualisieren*47*:

   ```
   aws codecommit update-pull-request-description --pull-request-id 47 --description "Updated the pull request to remove unused global variable."
   ```

# Genehmigungsregel für einen Pull Request bearbeiten oder löschen
<a name="how-to-edit-delete-pull-request-approval-rule"></a>

Falls eine Genehmigungsregel für eine Pull-Anforderung vorliegt, können Sie diese Pull-Anforderung erst zusammenführen, wenn die Bedingungen erfüllt sind. Sie können die Genehmigungsregeln für Pull-Anforderungen ändern, um die Erfüllung der Bedingungen zu erleichtern oder für striktere Prüfungen zu sorgen. Sie können die Anzahl der Benutzer ändern, die eine Pull-Anforderung genehmigen müssen. Sie können auch die Mitgliedschaft in einem Genehmigungspool von Benutzern für die Regel hinzufügen, entfernen oder ändern. Wenn Sie eine Genehmigungsregel für eine Pull-Anforderung nicht mehr verwenden möchten, können Sie diese löschen.

**Anmerkung**  
Sie können Genehmigungsregeln für eine Pull-Anforderung auch außer Kraft setzen. Weitere Informationen finden Sie unter [Genehmigungsregeln für eine Pull-Anfrage überschreiben](how-to-override-approval-rules.md).

Sie können die AWS CodeCommit Konsole oder die verwenden AWS CLI , um Genehmigungsregeln für Ihr Repository zu bearbeiten und zu löschen. 

**Topics**
+ [Bearbeiten oder löschen Sie eine Genehmigungsregel für eine Pull-Anfrage (Konsole)](#how-to-edit-delete-pull-request-approval-rule-console)
+ [Bearbeiten oder löschen Sie eine Genehmigungsregel für eine Pull-Anfrage (AWS CLI)](#how-to-edit-delete-pull-request-approval-rule-cli)

## Bearbeiten oder löschen Sie eine Genehmigungsregel für eine Pull-Anfrage (Konsole)
<a name="how-to-edit-delete-pull-request-approval-rule-console"></a>

Sie können die CodeCommit Konsole verwenden, um eine Genehmigungsregel für eine Pull-Anfrage in einem CodeCommit Repository zu bearbeiten oder zu löschen. 

1. Öffnen Sie die CodeCommit Konsole unter [https://console.aws.amazon.com/codesuite/codecommit/home](https://console.aws.amazon.com/codesuite/codecommit/home).

1. Wählen Sie unter **Repositories (Repositorys)** den Namen des Repositorys aus, in dem Sie eine Genehmigungsregel für eine Pull-Anforderung bearbeiten oder löschen möchten. 

1. Wählen Sie im Navigationsbereich **Pull Requests** aus.

1. Wählen Sie die Pull-Anforderung aus, in der Sie eine Genehmigungsregel bearbeiten oder löschen möchten. Sie können Genehmigungsregeln nur für offene Pull-Anforderungen bearbeiten und löschen.  
![\[Eine Liste von Pull-Requests für ein Repository in der Konsole. CodeCommit\]](http://docs.aws.amazon.com/de_de/codecommit/latest/userguide/images/codecommit-pull-request-view.png)

1. Wählen Sie in der Pull-Anforderung **Approvals (Genehmigungen)** und dann die Regel aus, die Sie bearbeiten oder aus der Liste löschen möchten. Führen Sie eine der folgenden Aktionen aus:
   + Wenn Sie die Regel bearbeiten möchten, wählen Sie **Edit (Bearbeiten)** aus. 
   + Wenn Sie die Regel löschen möchten, wählen Sie **Delete (Löschen)** aus und befolgen Sie dann die Anweisungen, mit denen das Löschen der Regel verifiziert werden kann.

1. Nehmen Sie unter **Edit approval rule (Genehmigungsregel bearbeiten)** die gewünschten Änderungen an der Regel vor und wählen Sie dann **Submit (Senden)**.  
![\[Bearbeiten einer Genehmigungsregel\]](http://docs.aws.amazon.com/de_de/codecommit/latest/userguide/images/codecommit-pull-request-edit-rule.png)

1. Wählen Sie nach dem Konfigurieren der Genehmigungsregel **Submit (Senden)**.

 

## Bearbeiten oder löschen Sie eine Genehmigungsregel für eine Pull-Anfrage (AWS CLI)
<a name="how-to-edit-delete-pull-request-approval-rule-cli"></a>

Um AWS CLI Befehle mit zu verwenden CodeCommit, installieren Sie den AWS CLI. Weitere Informationen finden Sie unter [Befehlszeilenreferenz](cmd-ref.md). 

Sie können die verwenden AWS CLI , um den Inhalt einer Genehmigungsregel zu bearbeiten und eine Genehmigungsregel zu löschen. 

**Anmerkung**  
Auch folgende Befehle können interessant sein:  
**[update-pull-request-approval-state](how-to-review-pull-request.md#update-pull-request-approval-state)**, um die Genehmigung für eine Pull-Anforderung zu gewähren oder zu widerrufen.
[**get-pull-request-approval-states**](how-to-view-pull-request.md#get-pull-request-approval-state), um die Genehmigungen für die Pull-Anforderung anzuzeigen.
[**evaluate-pull-request-approval-rules**](how-to-merge-pull-request.md#evaluate-pull-request-approval-rules), um festzustellen, ob die Bedingungen der Genehmigungsregeln für eine Pull-Anforderung erfüllt sind.

**Um die zu verwenden AWS CLI , um eine Genehmigungsregel für einen Pull Request in einem CodeCommit Repository zu bearbeiten oder zu löschen**<a name="update-pull-request-approval-rule-content"></a>

1. Um eine Genehmigungsregel zu bearbeiten, führen Sie den Befehl **update-pull-request-approval-rule-content** aus, indem Sie Folgendes angeben:
   + ID der Pull-Anforderung (mit der Option **--id**).
   + Name der Genehmigungsregel (mit der Option **--approval-rule-name**).
   + Inhalt der Genehmigungsregel (mit der Option **--approval-rule-content**).

   In diesem Beispiel wird eine Genehmigungsregel aktualisiert, *Require two approved approvers* die nach einer Pull-Anfrage benannt ist und die ID von hat*27*. Die Regel erfordert eine Benutzergenehmigung aus einem Genehmigungspool, der alle IAM-Benutzer im *123456789012* Amazon Web Services Services-Konto umfasst:

   ```
   aws codecommit update-pull-request-approval-rule-content --pull-request-id 27 --approval-rule-name "Require two approved approvers" --approval-rule-content "{Version: 2018-11-08, Statements: [{Type: \"Approvers\", NumberOfApprovalsNeeded: 1, ApprovalPoolMembers:[\"CodeCommitApprovers:123456789012:user/*\"]}]}}"
   ```

1. <a name="delete-pull-request-approval-rule"></a>Um eine Genehmigungsregel zu löschen, führen Sie den Befehl **delete-pull-request-approval-rule** aus, indem Sie Folgendes angeben:
   + ID der Pull-Anforderung (mit der Option **--id**).
   + Name der Genehmigungsregel (mit der Option **--approval-rule-name**).

   Um beispielsweise eine Genehmigungsregel mit dem Namen *My Approval Rule* für eine Pull-Anfrage mit der folgenden ID zu löschen: *15*

   ```
   aws codecommit delete-pull-request-approval-rule --pull-request-id 15 --approval-rule-name "My Approval Rule"
   ```

# Genehmigungsregeln für eine Pull-Anfrage überschreiben
<a name="how-to-override-approval-rules"></a>

Im normalen Verlauf der Entwicklung möchten Sie, dass Benutzer die Bedingungen der Genehmigungsregeln erfüllen, bevor Sie Pull-Anforderungen zusammenführen. Es kann jedoch vorkommen, dass Sie das Zusammenführen einer Pull-Anforderung beschleunigen müssen. Beispiel: Sie möchten eine Fehlerbehebung in die Produktion übernehmen, aber niemand im Genehmigungs-Pool ist verfügbar, um die Pull-Anforderung zu genehmigen. In solchen Fällen können Sie die Genehmigungsregeln für eine Pull-Anforderung außer Kraft setzen. Sie können alle Genehmigungsregeln für eine Pull-Anforderung außer Kraft setzen, einschließlich derjenigen, die speziell für die Pull-Anforderung erstellt und aus einer Genehmigungsregelvorlage generiert wurden. Sie können nicht selektiv eine bestimmte Genehmigungsregel außer Kraft setzen, sondern nur alle Regeln. Nachdem Sie die Genehmigungsregelanforderungen durch Außerkraftsetzen der Regeln aufgehoben haben, können Sie die Pull-Anforderung mit dem Ziel-Branch zusammenführen.

Wenn Sie Genehmigungsregeln für eine Pull-Anforderung außer Kraft setzen, werden Informationen über den Benutzer, der die Regeln außer Kraft setzt, in der Aktivität für die Pull-Anforderung aufgezeichnet. Auf diese Weise können Sie den Verlauf einer Pull-Anforderung rückverfolgen und ermitteln, wer die Regeln außer Kraft gesetzt hat. Sie können die Außerkraftsetzung auch widerrufen, wenn die Pull-Anforderung noch geöffnet ist. Nachdem die Pull-Anforderung zusammengeführt wurde, können Sie die Außerkraftsetzung nicht mehr widerrufen.

**Topics**
+ [Genehmigungsregeln überschreiben (Konsole)](#how-to-override-approval-rules-console)
+ [Genehmigungsregeln außer Kraft setzen ()AWS CLI](#how-to-override-approval-rules-cli)

## Genehmigungsregeln überschreiben (Konsole)
<a name="how-to-override-approval-rules-console"></a>

Sie können die Anforderungen von Genehmigungsregeln für eine Pull-Anforderung in der Konsole im Rahmen der Prüfung einer Pull-Anforderung außer Kraft setzen. Wenn Sie Ihre Meinung ändern, können Sie die Außerkraftsetzung widerrufen. Die Genehmigungsregelanforderungen werden dann wieder angewendet. Sie können Genehmigungsregeln nur außer Kraft setzen oder eine Außerkraftsetzung widerrufen, wenn die Pull-Anforderung noch geöffnet ist. Nachdem sie zusammengeführt oder geschlossen wurde, können Sie den Außerkraftsetzungsstatus nicht mehr ändern.

1. Öffnen Sie die CodeCommit Konsole unter [https://console.aws.amazon.com/codesuite/codecommit/home](https://console.aws.amazon.com/codesuite/codecommit/home).

1. Wählen Sie im Bereich **Repositories (Repositorys)** den Namen des Repositorys aus. 

1. Wählen Sie im Navigationsbereich **Pull requests (Pull-Anforderungen)** aus. Wählen Sie die Pull-Anforderung, für die die Genehmigungsregel außer Kraft gesetzt werden soll, oder widerrufen Sie eine Außerkraftsetzung.

1. Wählen Sie auf der Registerkarte **Approvals (Genehmigungen)** die Option **Override approval rules (Genehmigungsregel außer Kraft setzen)** aus. Die Anforderungen werden verlagert und der Schaltflächentext wird in **Revoke override (Außerkraftsetzung widerrufen)** geändert. Um die Genehmigungsregelanforderungen wieder anzuwenden, wählen Sie **Revoke override (Außerkraftsetzung widerrufen)**.

## Genehmigungsregeln außer Kraft setzen ()AWS CLI
<a name="how-to-override-approval-rules-cli"></a>

Sie können die verwenden AWS CLI , um die Anforderungen der Genehmigungsregeln außer Kraft zu setzen. Sie können auch den Außerkraftsetzungsstatus für eine Pull-Anforderung anzeigen.<a name="override-approval-rules"></a>

## So setzen Sie Genehmigungsregelanforderungen für eine Pull-Anforderung außer Kraft
<a name="override-approval-rules"></a>

1. Führen Sie am Terminal oder in der Befehlszeile den Befehl **override-pull-request-approval-rules** unter Angabe der folgenden Informationen aus:
   + Die vom System generierte ID der Pull-Anforderung.
   + Die neueste Revisions-ID der Pull-Anforderung. Verwenden Sie **get-pull-request**, um diese Informationen anzuzeigen.
   + Der zu überschreibende Status: `OVERRIDE` oder `REVOKE`. Der Status `REVOKE` entfernt den Status `OVERRIDE`, wird aber nicht gespeichert.

   So setzen Sie beispielsweise Genehmigungsregeln für eine Pull-Anforderung mit der ID **34** und der Revisions-ID **927df8d8EXAMPLE** außer Kraft:

   ```
   aws codecommit override-pull-request-approval-rules --pull-request-id 34 --revision-id 927df8d8dEXAMPLE --override-status OVERRIDE
   ```

1. Bei erfolgreicher Ausführung gibt dieser Befehl nichts zurück.

1. So widerrufen Sie die Außerkraftsetzung für eine Pull-Anforderung mit der ID **34** und der Revisions-ID **927df8d8EXAMPLE**:

   ```
   aws codecommit override-pull-request-approval-rules --pull-request-id 34 --revision-id 927df8d8dEXAMPLE --override-status REVOKE
   ```<a name="get-override-status"></a>

## So erhalten Sie Informationen zum Außerkraftsetzungsstatus einer Pull-Anforderung
<a name="get-override-status"></a>

1. Führen Sie am Terminal oder in der Befehlszeile den Befehl **get-pull-request-override-state** unter Angabe der folgenden Informationen aus:
   + Die vom System generierte ID der Pull-Anforderung.
   + Die neueste Revisions-ID der Pull-Anforderung. Verwenden Sie **get-pull-request**, um diese Informationen anzuzeigen.

   So zeigen Sie beispielsweise den Außerkraftsetzungsstatus für eine Pull-Anforderung mit der ID **34** und der Revisions-ID **927df8d8EXAMPLE** an:

   ```
   aws codecommit get-pull-request-override-state --pull-request-id 34 --revision-id 927df8d8dEXAMPLE
   ```

1. Ist der Befehl erfolgreich, wird eine Ausgabe zurückgegeben, die der folgenden ähnelt:

   ```
   {
       "overridden": true,
       "overrider": "arn:aws:iam::123456789012:user/Mary_Major"
   }
   ```

# Einen Pull-Request in einem AWS CodeCommit Repository zusammenführen
<a name="how-to-merge-pull-request"></a>

Nachdem der Code geprüft wurde und alle Genehmigungsregeln (falls vorhanden) für die Pull-Anforderung erfüllt wurden, können Sie eine Pull-Anforderung auf verschiedene Arten zusammenführen:
+ <a name="is-mergable"></a>In der Konsole können Sie den Quell-Branch mit einer der verfügbaren Merge-Strategien mit dem Ziel-Branch zusammenführen, wodurch auch die Pull-Anforderung geschlossen wird. Sie können Zusammenführungskonflikte auch in der Konsole lösen. Die Konsole zeigt eine Meldung an, die angibt, ob die Pull-Anforderung zusammengeführt werden kann oder Konflikte gelöst werden müssen. Sobald alle Konflikte gelöst wurden und Sie **Merge (Zusammenführen)** auswählen, wird die Zusammenführung unter Anwendung der von Ihnen ausgewählten Merge-Strategie durchgeführt. FAST\$1FORWARD ist die Merge-Standardstrategie und die Standardoption für Git. Je nach dem Status des Codes in den Quell- und Ziel-Branches ist diese Strategie möglicherweise nicht verfügbar, dafür aber andere Optionen, wie z. B. Squashmerge oder 3-Wege-Merge.
+ Sie können den verwenden AWS CLI , um den Pull-Request zusammenzuführen und zu schließen, indem Sie die Fast-Forward-, Squash- oder 3-Way-Merge-Strategie verwenden. 
+ <a name="why-git-merge"></a>Verwenden Sie auf Ihrem lokalen Computer den Befehl **git merge**, um den Quell-Branch mit dem Ziel-Branch zusammenzuführen, und übertragen Sie dann den zusammengeführten Code an den Ziel-Branch. Dieser Herangehensweise hat Nachteile, die Sie berücksichtigen müssen. Die Pull-Anforderung wird unabhängig davon zusammengeführt, ob die Anforderungen der Genehmigungsregeln für die Pull-Anforderung erfüllt wurden – diese Kontrollen werden umgangen. Durch das Zusammenführen und Pushen des Ziel-Branches wird die Pull-Anforderung auch automatisch geschlossen, wenn die Pull-Anforderung mithilfe der Merge-Strategie mit Vorlauf zusammengeführt wird. Ein Vorteil dieses Ansatzes besteht darin, dass Sie mit dem **git merge** Befehl Optionen oder Strategien zum Zusammenführen auswählen können, die in der Konsole nicht verfügbar sind. CodeCommit Weitere Informationen zu **git merge** und den Mergeoptionen finden Sie unter [git-merge](https://git-scm.com/docs/git-merge) oder in Ihrer Git-Dokumentation.

CodeCommit schließt eine Pull-Anfrage automatisch, wenn entweder der Quell- oder der Ziel-Branch der Pull-Anfrage gelöscht wird.

**Topics**
+ [Eine Pull-Anfrage zusammenführen (Konsole)](#how-to-merge-pull-request-console)
+ [Eine Pull-Anfrage zusammenführen (AWS CLI)](#how-to-merge-pull-request-cli)

## Eine Pull-Anfrage zusammenführen (Konsole)
<a name="how-to-merge-pull-request-console"></a>

Du kannst die CodeCommit Konsole verwenden, um eine Pull-Anfrage in einem CodeCommit Repository zusammenzuführen. Nachdem der Status einer Pull-Anforderung in **Merged (Zusammengeführt)** geändert wurde, wird sie nicht mehr in der Liste offener Pull-Anforderungen angezeigt. Eine zusammengeführte Pull-Anforderung wird als geschlossen kategorisiert. Ihr Status kann nicht wieder in **Open (Geöffnet)** geändert werden, aber Benutzer können die Änderungen weiterhin kommentieren und auf Kommentare antworten. Nachdem eine Pull-Anforderung zusammengeführt oder geschlossen wurde, können Sie sie nicht mehr genehmigen, eine erteilte Genehmigung für sie widerrufen oder die Genehmigungsregeln außer Kraft setzen, die der Pull-Anforderung zugewiesen wurden.

1. Öffne die CodeCommit Konsole unter [https://console.aws.amazon.com/codesuite/codecommit/home](https://console.aws.amazon.com/codesuite/codecommit/home).

1. Wählen Sie im Bereich **Repositories (Repositorys)** den Namen des Repositorys aus. 

1. Wählen Sie im Navigationsbereich **Pull requests (Pull-Anforderungen)** aus.

1. Standardmäßig wird eine Liste aller offenen Pull-Anforderungen angezeigt. Wählen Sie die offene Pull-Anforderung aus, die Sie zusammenführen möchten.

1. Wählen Sie in der Pull-Anforderung die Option **Approvals (Genehmigungen)**. Verifizieren Sie anhand der Liste der Genehmiger, dass die Bedingungen aller Genehmigungsregeln (falls vorhanden) erfüllt wurden. Sie können eine Pull-Anforderung nicht zusammenführen, wenn einzelne oder mehrere Genehmigungsregeln den Status **Rule not satisfied (Regel nicht erfüllt)** haben. Wenn kein Benutzer die Pull-Anforderung genehmigt hat, müssen Sie abwägen, ob sie zusammengeführt werden soll oder ob Sie auf Genehmigungen warten möchten.
**Anmerkung**  
Wenn eine Genehmigungsregel für eine Pull-Anforderung erstellt wurde, können Sie sie bearbeiten oder löschen, um die Blockierung der Zusammenführung aufzuheben. Wenn die Genehmigungsregel mit einer Genehmigungsregelvorlage erstellt wurde, können Sie sie nicht bearbeiten oder löschen. Sie können sich nur entscheiden, die Anforderungen außer Kraft zu setzen. Weitere Informationen finden Sie unter [Genehmigungsregeln für eine Pull-Anfrage überschreiben](how-to-override-approval-rules.md).  
![\[Eine Pull-Anforderung mit einer Genehmigungsregel, deren Bedingungen nicht erfüllt wurden, und mit einer leeren Genehmigerliste\]](http://docs.aws.amazon.com/de_de/codecommit/latest/userguide/images/codecommit-approval-rule-not-met.png)

1. Wählen Sie **Merge (Zusammenführen)**.

1. Wählen Sie in der Pull-Anforderung zwischen den verfügbaren Mergestrategien. Merge-Strategien, die nicht angewendet werden können, werden abgedunkelt dargestellt. Wenn keine Merge-Strategien verfügbar sind, kannst du Konflikte manuell in der CodeCommit Konsole oder lokal mit deinem Git-Client lösen. Weitere Informationen finden Sie unter [Konflikte in einer Pull-Anfrage in einem AWS CodeCommit Repository lösen](how-to-resolve-conflict-pull-request.md).  
![\[Eine Pull-Anfrage mit den Merge-Strategien, die für die Zusammenführung in der CodeCommit Konsole verfügbar sind.\]](http://docs.aws.amazon.com/de_de/codecommit/latest/userguide/images/codecommit-merge-squash.png)
   + Bei einem Merge mit Vorlauf bewegt sich die Referenz für den Ziel-Branch vorwärts zum neuesten Commit des Quell-Branches. Dies ist das Standardverhalten von Git, soweit möglich. Es wird kein Merge-Commit erstellt, der gesamte Commit-Verlauf vom Quell-Branch bleibt aber erhalten, als ob er im Ziel-Branch aufgetreten wäre. Zusammenführungen mit Vorlauf werden nicht als Branch-Zusammenführungen in der Commit-Ansicht des Verlaufs für den Ziel-Branch dargestellt, weil kein Merge-Commit erstellt wird. Die Spitze des Quell-Branches wird per Vorlauf an die Spitze des Ziel-Branches weitergeleitet. 
   + Bei einem Squash-Merge wird ein Commit mit den Änderungen im Quell-Branch erstellt und weist diesen einzelnen Squash-Commit dem Ziel-Branch zu. Standardmäßig enthält die Commit-Nachricht für diesen Squash-Commit alle Commit-Nachrichten der Änderungen im Quell-Branch. Individuelle Commit-Verläufe der Branch-Änderungen bleiben nicht erhalten. Dadurch lässt sich der Repository-Verlauf vereinfachen, während gleichzeitig eine grafische Darstellung der Zusammenführung in der Commit Visualizer-Ansicht der Ziel-Branch-Verlaufs beibehalten wird. 
   + Ein Dreiwege-Merge erstellt einen Merge-Commit für die Zusammenführung im Ziel-Branch, behält als Teil des Verlaufs des Ziel-Branches aber auch die einzelnen Commits bei, die im Quell-Branch vorgenommen wurden. Dies kann bei der Wahrung eines vollständigen Verlaufs der Änderungen an Ihrem Repository hilfreich sein.

1. Wenn Sie als Strategie den Squash-Merge oder den Dreiwege-Merge wählen, überprüfen Sie die automatisch generierte Commit-Nachricht und ändern Sie sie, wenn Sie die Informationen ändern möchten. Fügen Sie den Namen und die E-Mail-Adresse für den Commit-Verlauf hinzu.

1. (Optional) Deaktivieren Sie die Option, um den Quell-Branch im Rahmen der Zusammenführung zu löschen. Standardmäßig wird der Quell-Branch gelöscht, wenn eine Pull-Anforderung zusammengeführt wird.

1. Wählen Sie **Merge pull request (Pull-Anforderung zusammenführen)** um die Zusammenführung abzuschließen.

## Eine Pull-Anfrage zusammenführen (AWS CLI)
<a name="how-to-merge-pull-request-cli"></a>

Um AWS CLI Befehle mit zu verwenden CodeCommit, installieren Sie den AWS CLI. Weitere Informationen finden Sie unter [Befehlszeilenreferenz](cmd-ref.md). 

**Um das AWS CLI zum Zusammenführen von Pull-Requests in einem CodeCommit Repository zu verwenden**

1. <a name="evaluate-pull-request-approval-rules"></a>Um auszuwerten, ob eine Pull-Anforderung alle Genehmigungsregeln erfüllt und zusammengeführt werden kann, führen Sie den Befehl **evaluate-pull-request-approval-rules** aus, indem Sie Folgendes angeben:
   + ID der Pull-Anforderung (mit der Option **--pull-request-id**).
   + Revisions-ID der Pull-Anforderung (mit **--revision-id option)**). Sie können die aktuelle Revisions-ID für eine Pull-Anforderung mit dem Befehl **[get-pull-request](how-to-view-pull-request.md#get-pull-request)** abrufen.

   Zum Beispiel, um den Status der Genehmigungsregeln für eine Pull-Anfrage mit einer ID von *27* und einer Revisions-ID von zu bewerten*9f29d167EXAMPLE*:

   ```
   aws codecommit evaluate-pull-request-approval-rules --pull-request-id 27 --revision-id 9f29d167EXAMPLE
   ```

   Ist der Befehl erfolgreich, wird eine Ausgabe zurückgegeben, die der folgenden ähnelt:

   ```
   {
       "evaluation": {
           "approved": false,
           "approvalRulesNotSatisfied": [
               "Require two approved approvers"
           ],
           "overridden": false,
           "approvalRulesSatisfied": []
       }
   }
   ```
**Anmerkung**  
Diese Ausgabe gibt an, dass eine Pull-Anforderung nicht zusammengeführt werden kann, weil die Anforderungen einer Genehmigungsregel nicht erfüllt wurden. Damit diese Pull-Anforderung zusammengeführt werden kann, können Sie voraussetzen, dass Genehmiger sie genehmigen und so die Bedingungen der Regel erfüllen. Abhängig von Ihren Berechtigungen und der Art der Regelerstellung können Sie die Regel möglicherweise auch bearbeiten, überschreiben oder löschen. Weitere Informationen finden Sie unter [Überprüfen einer Pull-Anforderung](how-to-review-pull-request.md), [Genehmigungsregeln für eine Pull-Anfrage überschreiben](how-to-override-approval-rules.md) und [Genehmigungsregel für einen Pull Request bearbeiten oder löschen](how-to-edit-delete-pull-request-approval-rule.md). 

1. Um eine Pull-Anforderung mittels der Mergestrategie mit Vorlauf zusammenzuführen und zu schließen, führen Sie den Befehl **merge-pull-request-by-fast-forward**aus, wobei Sie Folgendes angeben:
   + ID der Pull-Anforderung (mit der Option **--pull-request-id**).
   + Die vollständige Commit-ID des obersten Commits des Quell-Branches (mit der Option **--source-commit-id**). 
   + Der Name des Repositorys (mit der Option **--repository-name**).

    Um beispielsweise eine Pull-Anfrage mit der ID von und der Quell-Commit-ID von *99132ab0EXAMPLE* in einem Repository mit dem Namen zusammenzuführen *47* und zu schließen*MyDemoRepo*:

   ```
   aws codecommit merge-pull-request-by-fast-forward --pull-request-id 47 --source-commit-id 99132ab0EXAMPLE --repository-name MyDemoRepo
   ```

   Ist der Befehl erfolgreich, wird eine Ausgabe zurückgegeben, die der folgenden ähnelt:

   ```
   {
       "pullRequest": {
           "approvalRules": [
               {
                   "approvalRuleContent": "{\"Version\": \"2018-11-08\",\"Statements\": [{\"Type\": \"Approvers\",\"NumberOfApprovalsNeeded\": 1,\"ApprovalPoolMembers\": [\"arn:aws:sts::123456789012:assumed-role/CodeCommitReview/*\"]}]}",
                   "approvalRuleId": "dd8b17fe-EXAMPLE",
                   "approvalRuleName": "I want one approver for this pull request",
                   "creationDate": 1571356106.936,
                   "lastModifiedDate": 571356106.936,
                   "lastModifiedUser": "arn:aws:iam::123456789012:user/Mary_Major",
                   "ruleContentSha256": "4711b576EXAMPLE"
               }
           ],
           "authorArn": "arn:aws:iam::123456789012:user/Li_Juan",
           "clientRequestToken": "",
           "creationDate": 1508530823.142,
           "description": "Review the latest changes and updates to the global variables",
           "lastActivityDate": 1508887223.155,
           "pullRequestId": "47",
           "pullRequestStatus": "CLOSED",
           "pullRequestTargets": [
               {
                   "destinationCommit": "9f31c968EXAMPLE",
                   "destinationReference": "refs/heads/main",
                   "mergeMetadata": {
                       "isMerged": true,
                       "mergedBy": "arn:aws:iam::123456789012:user/Mary_Major"
                   },
                   "repositoryName": "MyDemoRepo",
                   "sourceCommit": "99132ab0EXAMPLE",
                   "sourceReference": "refs/heads/variables-branch"
               }
           ],
           "title": "Consolidation of global variables"
       }
   }
   ```

1. Um eine Pull-Anforderung mittels der Squashmerge-Strategie zusammenzuführen und zu schließen, führen Sie den Befehl **merge-pull-request-by-squash**aus, wobei Sie Folgendes angeben:
   + ID der Pull-Anforderung (mit der Option **--pull-request-id**).
   + Die vollständige Commit-ID des obersten Commits des Quell-Branches (mit der Option **--source-commit-id**). 
   + Der Name des Repositorys (mit der Option **--repository-name**).
   + Die Konflikt-Detailgenauigkeit, die Sie verwenden möchten (mit der Option **--conflict-detail-level**). Wenn dieser Parameter nicht angegeben wird, wird der Standardwert **`FILE_LEVEL`** verwendet.
   + Die Konfliktlösungsstrategie, die Sie verwenden möchten (mit der Option **--conflict-resolution-strategy**). Wenn dieser Parameter nicht angegeben wird, gilt der Standardwert `NONE`, und Konflikte müssen manuell behoben werden.
   + Die einzuschließende Commit-Nachricht (mit der Option **--commit-message**).
   + Der für den Commit zu verwendende Name (mit der Option **--author-name**).
   + Die für den Commit zu verwendende E-Mail-Adresse (mit der Option **--email**).
   + Angabe, ob leere Ordner beibehalten werden sollen (mit der Option **--keep-empty-folders**).

   Im folgenden Beispiel wird eine Pull-Anfrage mit der ID von *47* und der Quell-Commit-ID von *99132ab0EXAMPLE* in einem Repository mit dem Namen *MyDemoRepo* zusammengeführt und geschlossen. Es verwendet das Konfliktdetail `LINE_LEVEL` und die Konfliktlösungsstrategie `ACCEPT_SOURCE`:

   ```
   aws codecommit merge-pull-request-by-squash --pull-request-id 47 --source-commit-id 99132ab0EXAMPLE --repository-name MyDemoRepo --conflict-detail-level LINE_LEVEL --conflict-resolution-strategy ACCEPT_SOURCE --author-name "Jorge Souza" --email "jorge_souza@example.com" --commit-message "Merging pull request 47 by squash and accepting source in merge conflicts"
   ```

   Ist der Befehl erfolgreich, erstellt er die gleiche Art von Ausgabe wie ein Merge mit Vorlauf, vergleichbar mit der folgenden Ausgabe:

   ```
   {
       "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": "dd8b17fe-EXAMPLE",
                       "approvalRuleTemplateName": "2-approver-rule-for-main"
                   },
                   "ruleContentSha256": "4711b576EXAMPLE"
               }
           ],
           "authorArn": "arn:aws:iam::123456789012:user/Li_Juan",
           "clientRequestToken": "",
           "creationDate": 1508530823.142,
           "description": "Review the latest changes and updates to the global variables",
           "lastActivityDate": 1508887223.155,
           "pullRequestId": "47",
           "pullRequestStatus": "CLOSED",
           "pullRequestTargets": [
               {
                   "destinationCommit": "9f31c968EXAMPLE",
                   "destinationReference": "refs/heads/main",
                   "mergeMetadata": {
                       "isMerged": true,
                       "mergedBy": "arn:aws:iam::123456789012:user/Mary_Major"
                   },
                   "repositoryName": "MyDemoRepo",
                   "sourceCommit": "99132ab0EXAMPLE",
                   "sourceReference": "refs/heads/variables-branch"
               }
           ],
           "title": "Consolidation of global variables"
       }
   }
   ```

1. Um eine Pull-Anforderung mittels der Dreiwege-Mergestrategie zusammenzuführen und zu schließen, führen Sie den Befehl **merge-pull-request-by-three-way** aus und geben Sie Folgendes an:
   + ID der Pull-Anforderung (mit der Option **--pull-request-id**).
   + Die vollständige Commit-ID des obersten Commits des Quell-Branches (mit der Option **--source-commit-id**). 
   + Der Name des Repositorys (mit der Option **--repository-name**).
   + Die Konflikt-Detailgenauigkeit, die Sie verwenden möchten (mit der Option **--conflict-detail-level**). Wenn dieser Parameter nicht angegeben wird, wird der Standardwert **`FILE_LEVEL`** verwendet.
   + Die Konfliktlösungsstrategie, die Sie verwenden möchten (mit der Option **--conflict-resolution-strategy**). Wenn dieser Parameter nicht angegeben wird, gilt der Standardwert `NONE`, und Konflikte müssen manuell behoben werden.
   + Die einzuschließende Commit-Nachricht (mit der Option **--commit-message**).
   + Der für den Commit zu verwendende Name (mit der Option **--author-name**).
   + Die für den Commit zu verwendende E-Mail-Adresse (mit der Option **--email**).
   + Angabe, ob leere Ordner beibehalten werden sollen (mit der Option **--keep-empty-folders**).

   Im folgenden Beispiel wird eine Pull-Anfrage mit der ID von *47* und der Quell-Commit-ID von *99132ab0EXAMPLE* in einem Repository mit dem Namen zusammengeführt und geschlossen. *MyDemoRepo* Es verwendet die Standardoptionen für Konfliktdetail und Konfliktlösungsstrategie:

   ```
   aws codecommit merge-pull-request-by-three-way --pull-request-id 47 --source-commit-id 99132ab0EXAMPLE --repository-name MyDemoRepo --author-name "Maria Garcia" --email "maria_garcia@example.com" --commit-message "Merging pull request 47 by three-way with default options"
   ```

   Ist der Befehl erfolgreich, erstellt er die gleiche Art von Ausgabe wie ein Merge mit Vorlauf, vergleichbar mit der folgenden Ausgabe:

   ```
   {
       "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": "dd8b17fe-EXAMPLE",
                       "approvalRuleTemplateName": "2-approver-rule-for-main"
                   },
                   "ruleContentSha256": "4711b576EXAMPLE"
               }
           ],
           "authorArn": "arn:aws:iam::123456789012:user/Li_Juan",
           "clientRequestToken": "",
           "creationDate": 1508530823.142,
           "description": "Review the latest changes and updates to the global variables",
           "lastActivityDate": 1508887223.155,
           "pullRequestId": "47",
           "pullRequestStatus": "CLOSED",
           "pullRequestTargets": [
               {
                   "destinationCommit": "9f31c968EXAMPLE",
                   "destinationReference": "refs/heads/main",
                   "mergeMetadata": {
                       "isMerged": true,
                       "mergedBy": "arn:aws:iam::123456789012:user/Mary_Major"
                   },
                   "repositoryName": "MyDemoRepo",
                   "sourceCommit": "99132ab0EXAMPLE",
                   "sourceReference": "refs/heads/variables-branch"
               }
           ],
           "title": "Consolidation of global variables"
       }
   }
   ```

# Konflikte in einer Pull-Anfrage in einem AWS CodeCommit Repository lösen
<a name="how-to-resolve-conflict-pull-request"></a>

Wenn Ihre Pull-Anforderung Konflikte hat und nicht zusammengeführt werden kann, können Sie versuchen, die Konflikte auf eine von mehreren Arten zu lösen:
+ Auf Ihrem lokalen Computer können Sie mit dem Befehl **git diff** nach Konflikten zwischen den beiden Branches suchen und Änderungen vornehmen, um sie zu lösen. Sie können auch ein anderes Tool oder ein anderes Programm verwenden, um sie beim Suchen und Beheben von Unterschieden zu unterstützen. Sobald Sie sie zu Ihrer Zufriedenheit gelöst haben, können Sie Ihren Quell-Branch mit den Änderungen, die die gelösten Konflikte enthalten, weiterleiten, wodurch der Pull-Request aktualisiert wird. Weitere Informationen über **git diff** und **git difftool** finden Sie in der Git-Dokumentation.
+ In der Konsole können Sie **Resolve conflicts (Konflikte lösen)** wählen. Daraufhin wird ein Texteditor geöffnet, der die Konflikte auf ähnliche Weise wie der Befehl **git diff** anzeigt. Sie können die Konflikte manuell in jeder Datei, in der sie enthalten sind, überprüfen, Änderungen vornehmen und die Pull-Anforderung dann mit Ihren Änderungen aktualisieren.
+ In der AWS CLI AWS CLI können Sie Informationen über Merge-Konflikte abrufen und einen Merge-Commit ohne Referenz erstellen, um eine Zusammenführung zu testen. 

**Topics**
+ [Konflikte in einer Pull-Anfrage lösen (Konsole)](#how-to-resolve-conflict-pull-request-console)
+ [Konflikte in einer Pull-Anfrage lösen (AWS CLI)](#how-to-resolve-conflict-pull-request-cli)

## Konflikte in einer Pull-Anfrage lösen (Konsole)
<a name="how-to-resolve-conflict-pull-request-console"></a>

Sie können die CodeCommit Konsole verwenden, um Konflikte in einer Pull-Anfrage in einem CodeCommit Repository zu lösen. 

1. Öffnen Sie die CodeCommit Konsole unter [https://console.aws.amazon.com/codesuite/codecommit/home](https://console.aws.amazon.com/codesuite/codecommit/home).

1. Wählen Sie im Bereich **Repositories (Repositorys)** den Namen des Repositorys aus. 

1. Wählen Sie im Navigationsbereich **Pull requests (Pull-Anforderungen)** aus.

1. Standardmäßig wird eine Liste aller offenen Pull-Anforderungen angezeigt. Wählen Sie die offene Pull-Anforderung aus, die Sie zusammenführen möchten, die aber Konflikte enthält.

1. Wählen Sie in der Pull-Anforderung **Resolve conflicts (Konflikte lösen)**. Diese Option wird nur angezeigt, wenn Konflikte vorhanden sind, die behoben werden müssen, bevor die Pull-Anforderung zusammengeführt werden kann.  
![\[Eine Pull-Anforderung, die Konflikte aufweist, muss korrigiert werden, bevor sie zusammengeführt werden kann.\]](http://docs.aws.amazon.com/de_de/codecommit/latest/userguide/images/codecommit-pull-request-resolve-conflicts.png)

1. In dem nun geöffneten Konfliktlösungsfenster werden die einzelnen Dateien mit Konflikten aufgeführt, die behoben werden müssen. Wählen Sie die einzelnen Dateien in der Liste aus, um die Konflikte zu überprüfen. Nehmen Sie alle erforderlichen Änderungen vor, bis alle Konflikte behoben wurden.  
![\[Die Konfliktlösung-Editor mit einer Datei mit Konflikten, die von Ihnen noch nicht behoben wurden.\]](http://docs.aws.amazon.com/de_de/codecommit/latest/userguide/images/codecommit-pull-request-resolve.png)
   + Sie können wählen, ob Sie den Inhalt der Quelldatei oder der Zieldatei verwenden oder ob Sie bei einer anderen Datei als einer binären Datei ihren Inhalt manuell so bearbeiten möchten, dass sie nur die von Ihnen gewünschten Änderungen enthält. Standard-Git-Diff-Marker werden zum Aufzeigen der Konflikte zwischen den Ziel(HEAD)- und Quell-Branches in der Datei verwendet.
   + Wenn es sich bei der Datei um eine binäre Datei oder ein Git-Untermodul handelt oder wenn ein Konflikt bei den Datei-/Ordnernamen vorliegt, müssen Sie entscheiden, ob die Quelldatei oder die Zieldatei zum Lösen der Konflikte verwendet werden soll. Sie können Binärdateien in der Konsole nicht anzeigen oder bearbeiten. CodeCommit 
   + Bei Dateimoduskonflikten wird die Option angezeigt, diesen Konflikt zu lösen, indem Sie zwischen dem Dateimodus der Quelldatei und dem Dateimodus der Zieldatei wählen. 
   + Wenn Sie Ihre Änderungen an einer Datei verwerfen und deren konfligierten Zustand wiederherstellen möchten, wählen Sie **Reset file (Datei zurücksetzen)**. Dies ermöglicht Ihnen, die Konflikte auf andere Weise zu lösen.

1. Wenn Sie mit Ihren Änderungen zufrieden sind, wählen Sie **Update pull request (Pull-Anforderung aktualisieren)**.
**Anmerkung**  
Sie müssen alle Konflikte in allen Dateien lösen, bevor Sie die Pull-Anforderung erfolgreich mit Ihren Änderungen aktualisieren können. 

1. Die Pull-Anforderung wird mit Ihren Änderungen aktualisiert und kann zusammengeführt werden. Sie sehen die Seite zum Zusammenführen. Sie können bestimmen, dass die Pull-Anforderung zu diesem Zeitpunkt zusammengeführt werden soll, oder zur Liste der Pull-Anforderungen zurückkehren. 

## Konflikte in einer Pull-Anfrage lösen (AWS CLI)
<a name="how-to-resolve-conflict-pull-request-cli"></a>

Um AWS CLI Befehle mit zu verwenden CodeCommit, installieren Sie den AWS CLI. Weitere Informationen finden Sie unter [Befehlszeilenreferenz](cmd-ref.md). 

Kein einziger AWS CLI Befehl ermöglicht es Ihnen, Konflikte in einer Pull-Anfrage zu lösen und diese Anfrage zusammenzuführen. Sie können mit einzelnen Befehlen jedoch Konflikte aufdecken und versuchen, sie zu lösen, und testen, ob eine Pull-Anforderung zusammengeführt werden kann. Sie können Folgendes verwenden:
+ **get-merge-options**, um herauszufinden, welche Mergeoptionen für eine Zusammenführung zwischen zwei Commit-Spezifizierern verfügbar sind.
+ **get-merge-conflicts**, um eine Liste von Dateien mit Konflikten beim Zusammenführen zwischen zwei Commit-Spezifizierern abzurufen.
+ **batch-describe-merge-conflicts**, um Informationen über alle Zusammenführungskonflikte in Dateien in einer Zusammenführung zwischen zwei Commits mithilfe einer bestimmten Merge-Strategie abzurufen. 
+ **describe-merge-conflicts**, um detaillierte Informationen über Zusammenführungskonflikte für eine bestimmte Datei zwischen zwei Commits mit einer bestimmten Strategie zu erhalten.
+ **create-unreferenced-merge-commit**, um das Ergebnis des Zusammenführens von zwei Commit-Spezifizierern mit einer bestimmten Strategie zu testen.

1. <a name="get-merge-options"></a>Um herauszufinden, welche Mergeoptionen für eine Zusammenführung zwischen zwei Commit-Spezifizierern verfügbar sind, führen Sie den Befehl **get-merge-options** aus und geben Sie Folgendes an:
   + Einen Commit-Spezifizierer für die Quelle der Zusammenführung (mit der Option **--source-commit-specifier**).
   + Einen Commit-Spezifizierer für das Ziel der Zusammenführung (mit der Option **--destination-commit-specifier**). 
   + Der Name des Repositorys (mit der Option **--repository-name**).
   + (Optional) Eine Konfliktlösungstrategie, die verwendet werden soll (mit der Option **--conflict-resolution-strategy**).
   + (Optional) Die gewünschte Detailgenauigkeit aller Konflikte (mit der Option **--conflict-detail-level**).

    Um beispielsweise zu ermitteln, welche Merge-Strategien für das Zusammenführen eines Quell-Branches *bugfix-1234* mit einem Ziel-Branch *main* in einem Repository mit dem Namen: *MyDemoRepo*

   ```
   aws codecommit get-merge-options --source-commit-specifier bugfix-1234 --destination-commit-specifier main --repository-name MyDemoRepo
   ```

   Ist der Befehl erfolgreich, wird eine Ausgabe zurückgegeben, die der folgenden ähnelt:

   ```
   {
       "mergeOptions": [
           "FAST_FORWARD_MERGE",
           "SQUASH_MERGE",
           "THREE_WAY_MERGE"
       ],
       "sourceCommitId": "d49940adEXAMPLE",
       "destinationCommitId": "86958e0aEXAMPLE",
       "baseCommitId": "86958e0aEXAMPLE"
   }
   ```

1. <a name="get-merge-conflict"></a>Um eine Liste der Dateien mit Zusammenführungskonflikten in einer Zusammenführung zwischen zwei Commit-Spezifizierern zu erhalten, führen Sie den Befehl **get-merge-conflicts** aus und geben Sie Folgendes an:
   + Einen Commit-Spezifizierer für die Quelle der Zusammenführung (mit der Option **--source-commit-specifier**).
   + Einen Commit-Spezifizierer für das Ziel der Zusammenführung (mit der Option **--destination-commit-specifier**). 
   + Der Name des Repositorys (mit der Option **--repository-name**).
   + Die Zusammenführungsoption, die Sie verwenden möchten (mit der Option **--merge-option**).
   + (Optional) Die gewünschte Detailgenauigkeit aller Konflikte (mit der Option **--conflict-detail-level**).
   + (Optional) Eine Konfliktlösungstrategie, die verwendet werden soll (mit der Option **--conflict-resolution-strategy**).
   + (Optional) Die maximale Anzahl von Dateien mit Konflikten, die zurückgegeben werden soll (mit der Option **--max-conflict-files**).

   Um beispielsweise eine Liste von Dateien abzurufen, die Konflikte bei einer Zusammenführung zwischen einem Quell-Branch namens feature-randomizationfeature und einem Ziel-Branch namens main enthalten, verwenden Sie die Drei-Wege-Zusammenführungsstrategie in einem Repository mit dem Namen: MyDemoRepo

   ```
   aws codecommit get-merge-conflicts --source-commit-specifier feature-randomizationfeature --destination-commit-specifier main --merge-option THREE_WAY_MERGE --repository-name MyDemoRepo
   ```

   Ist der Befehl erfolgreich, wird eine Ausgabe zurückgegeben, die der folgenden ähnelt:

   ```
   {
       "mergeable": false,
       "destinationCommitId": "86958e0aEXAMPLE",
       "sourceCommitId": "6ccd57fdEXAMPLE",
       "baseCommitId": "767b6958EXAMPLE",
       "conflictMetadataList": [
           {
               "filePath": "readme.md",
               "fileSizes": {
                   "source": 139,
                   "destination": 230,
                   "base": 85
               },
               "fileModes": {
                   "source": "NORMAL",
                   "destination": "NORMAL",
                   "base": "NORMAL"
               },
               "objectTypes": {
                   "source": "FILE",
                   "destination": "FILE",
                   "base": "FILE"
               },
               "numberOfConflicts": 1,
               "isBinaryFile": {
                   "source": false,
                   "destination": false,
                   "base": false
               },
               "contentConflict": true,
               "fileModeConflict": false,
               "objectTypeConflict": false,
               "mergeOperations": {
                   "source": "M",
                   "destination": "M"
               }
           }
       ]
   }
   ```

1. <a name="batch-describe-merge-conflicts"></a>Um Informationen über Zusammenführungskonflikte in allen Dateien und einem Teilsatz von Dateien in einer Zusammenführung zwischen zwei Commit-Spezifizierern zu erhalten, führen Sie den Befehl **batch-describe-merge-conflicts** aus und geben Sie Folgendes an:
   + Einen Commit-Spezifizierer für die Quelle der Zusammenführung (mit der Option **--source-commit-specifier**).
   + Einen Commit-Spezifizierer für das Ziel der Zusammenführung (mit der Option **--destination-commit-specifier**). 
   + Die Zusammenführungsoption, die Sie verwenden möchten (mit der Option **--merge-option**).
   + Der Name des Repositorys (mit der Option **--repository-name**).
   + (Optional) Eine Konfliktlösungstrategie, die verwendet werden soll (mit der Option **--conflict-resolution-strategy**).
   + (Optional) Die gewünschte Detailgenauigkeit aller Konflikte (mit der Option **--conflict-detail-level**).
   + (Optional) Die maximale Anzahl von Zusammenführungsstücken, die zurückgegeben werden soll (mit der Option **--max-merge-hunks**).
   + (Optional) Die maximale Anzahl von Dateien mit Konflikten, die zurückgegeben werden soll (mit der Option **--max-conflict-files**).
   + (Optional) Der Pfad der Ziel-Dateien, der zur Beschreibung der Konflikte verwendet werden soll (mit der Option **--file-paths**).

    Um beispielsweise die Zusammenführungskonflikte beim Zusammenführen eines Quellzweigs mit einem Zielzweig *feature-randomizationfeature* mit dem Namen zu ermitteln, *main* verwenden Sie die Strategie in einem Repository mit dem Namen: *THREE\$1WAY\$1MERGE* *MyDemoRepo*

   ```
   aws codecommit batch-describe-merge-conflicts --source-commit-specifier feature-randomizationfeature --destination-commit-specifier main --merge-option THREE_WAY_MERGE --repository-name MyDemoRepo
   ```

   Ist der Befehl erfolgreich, wird eine Ausgabe zurückgegeben, die der folgenden ähnelt:

   ```
   {
       "conflicts": [
           {
               "conflictMetadata": {
                   "filePath": "readme.md",
                   "fileSizes": {
                       "source": 139,
                       "destination": 230,
                       "base": 85
                   },
                   "fileModes": {
                       "source": "NORMAL",
                       "destination": "NORMAL",
                       "base": "NORMAL"
                   },
                   "objectTypes": {
                       "source": "FILE",
                       "destination": "FILE",
                       "base": "FILE"
                   },
                   "numberOfConflicts": 1,
                   "isBinaryFile": {
                       "source": false,
                       "destination": false,
                       "base": false
                   },
                   "contentConflict": true,
                   "fileModeConflict": false,
                   "objectTypeConflict": false,
                   "mergeOperations": {
                       "source": "M",
                       "destination": "M"
                   }
               },
               "mergeHunks": [
                   {
                       "isConflict": true,
                       "source": {
                           "startLine": 0,
                           "endLine": 3,
                           "hunkContent": "VGhpcyBpEXAMPLE=="
                       },
                       "destination": {
                           "startLine": 0,
                           "endLine": 1,
                           "hunkContent": "VXNlIHRoEXAMPLE="
                       }
                   }
               ]
           }
       ],
       "errors": [],
       "destinationCommitId": "86958e0aEXAMPLE",
       "sourceCommitId": "6ccd57fdEXAMPLE",
       "baseCommitId": "767b6958EXAMPLE"
   }
   ```

1. <a name="describe-merge-conflicts"></a>Um detaillierte Informationen über Zusammenführungskonflikte für eine bestimmte Datei in einer Zusammenführung zwischen zwei Commit-Spezifizierern zu erhalten, führen Sie den Befehl **describe-merge-conflicts** aus und geben Sie Folgendes an:
   + Einen Commit-Spezifizierer für die Quelle der Zusammenführung (mit der Option **--source-commit-specifier**).
   + Einen Commit-Spezifizierer für das Ziel der Zusammenführung (mit der Option **--destination-commit-specifier**). 
   + Die Zusammenführungsoption, die Sie verwenden möchten (mit der Option **--merge-option**).
   + Der Pfad der Zieldatei, die zur Beschreibung der Konflikte verwendet werden soll (mit der Option **--file-path**).
   + Der Name des Repositorys (mit der Option **--repository-name**).
   + (Optional) Eine Konfliktlösungstrategie, die verwendet werden soll (mit der Option **--conflict-resolution-strategy**).
   + (Optional) Die gewünschte Detailgenauigkeit aller Konflikte (mit der Option **--conflict-detail-level**).
   + (Optional) Die maximale Anzahl von Zusammenführungsstücken, die zurückgegeben werden soll (mit der Option **--max-merge-hunks**).
   + (Optional) Die maximale Anzahl von Dateien mit Konflikten, die zurückgegeben werden soll (mit der Option **--max-conflict-files**).

   Um beispielsweise die Zusammenführungskonflikte für eine Datei zu ermitteln, die *readme.md* in einem Quell-Branch *feature-randomizationfeature* mit einem Ziel-Branch benannt ist, *main* mit der *THREE\$1WAY\$1MERGE* Strategie in einem Repository namens*MyDemoRepo*:

   ```
   aws codecommit describe-merge-conflicts --source-commit-specifier feature-randomizationfeature --destination-commit-specifier main --merge-option THREE_WAY_MERGE --file-path readme.md --repository-name MyDemoRepo
   ```

   Ist der Befehl erfolgreich, wird eine Ausgabe zurückgegeben, die der folgenden ähnelt:

   ```
   {
       "conflictMetadata": {
           "filePath": "readme.md",
           "fileSizes": {
               "source": 139,
               "destination": 230,
               "base": 85
           },
           "fileModes": {
               "source": "NORMAL",
               "destination": "NORMAL",
               "base": "NORMAL"
           },
           "objectTypes": {
               "source": "FILE",
               "destination": "FILE",
               "base": "FILE"
           },
           "numberOfConflicts": 1,
           "isBinaryFile": {
               "source": false,
               "destination": false,
               "base": false
           },
           "contentConflict": true,
           "fileModeConflict": false,
           "objectTypeConflict": false,
           "mergeOperations": {
               "source": "M",
               "destination": "M"
           }
       },
       "mergeHunks": [
           {
               "isConflict": true,
               "source": {
                   "startLine": 0,
                   "endLine": 3,
                   "hunkContent": "VGhpcyBpEXAMPLE=="
               },
               "destination": {
                   "startLine": 0,
                   "endLine": 1,
                   "hunkContent": "VXNlIHRoEXAMPLE="
               }
           }
       ],
       "destinationCommitId": "86958e0aEXAMPLE",
       "sourceCommitId": "6ccd57fdEXAMPLE",
       "baseCommitId": "767b69580EXAMPLE"
   }
   ```

1. <a name="create-unreferenced-merge-commit"></a>Um einen uneferenzierten Commit zu erstellen, der das Ergebnis des Zusammenführens von zwei Commit-Spezifizierern repräsentiert, führen Sie den Befehl **create-unreferenced-merge-commit** aus und geben Sie Folgendes an:
   + Einen Commit-Spezifizierer für die Quelle der Zusammenführung (mit der Option **--source-commit-specifier**).
   + Einen Commit-Spezifizierer für das Ziel der Zusammenführung (mit der Option **--destination-commit-specifier**). 
   + Die Zusammenführungsoption, die Sie verwenden möchten (mit der Option **--merge-option**).
   + Der Name des Repositorys (mit der Option **--repository-name**).
   + (Optional) Eine Konfliktlösungstrategie, die verwendet werden soll (mit der Option **--conflict-resolution-strategy**).
   + (Optional) Die gewünschte Detailgenauigkeit aller Konflikte (mit der Option **--conflict-detail-level**).
   + (Optional) Die einzuschließende Commit-Nachricht (mit der Option **--commit-message**).
   + (Optional) Der für den Commit zu verwendende Name (mit der Option **--name**).
   + (Optional) Die für den Commit zu verwendende E-Mail-Adresse (mit der Option **--email**).
   + (Optional) Angabe, ob leere Ordner beibehalten werden sollen (mit der Option **--keep-empty-folders**).

    Um beispielsweise die Zusammenführungskonflikte beim Zusammenführen eines Quellzweigs *bugfix-1234* mit einem Zielzweig mit dem Namen ACCEPT\$1SOURCE in einem Repository *main* mit dem Namen zu ermitteln: *MyDemoRepo*

   ```
   aws codecommit create-unreferenced-merge-commit --source-commit-specifier bugfix-1234 --destination-commit-specifier main --merge-option THREE_WAY_MERGE --repository-name MyDemoRepo --name "Maria Garcia" --email "maria_garcia@example.com" --commit-message "Testing the results of this merge."
   ```

   Ist der Befehl erfolgreich, wird eine Ausgabe zurückgegeben, die der folgenden ähnelt:

   ```
   {
       "commitId": "4f178133EXAMPLE",
       "treeId": "389765daEXAMPLE"
   }
   ```

# Einen Pull-Request in einem AWS CodeCommit Repository schließen
<a name="how-to-close-pull-request"></a>

Wenn Sie eine Pull-Anforderung schließen möchten, ohne den Code zusammenzuführen, stehen Ihnen dazu mehrere Optionen zur Verfügung:
+ In der Konsole können Sie eine Pull-Anforderung schließen, ohne den Code zusammenzuführen. Dies ist sinnvoll, wenn Sie Branches manuell mithilfe des Befehls **git merge** zusammenführen möchten oder wenn der Code im Quell-Branch der Pull-Anforderung nicht der Code ist, der mit dem Ziel-Branch zusammengeführt werden soll. 
+ Sie können den in der Pull-Anfrage angegebenen Quell-Branch löschen. CodeCommit schließt einen Pull-Request automatisch, wenn entweder der Quell- oder der Ziel-Branch des Pull-Requests gelöscht wird.
+ In der AWS CLI kannst du den Status einer Pull-Anfrage von `OPEN` bis aktualisieren`CLOSED`. Damit wird die Pull-Anforderung geschlossen, ohne den Code zusammenzuführen. 

**Topics**
+ [Schließt eine Pull-Anfrage (Konsole)](#how-to-close-pull-request-console)
+ [Schließt eine Pull-Anfrage (AWS CLI)](#how-to-close-pull-request-cli)

## Schließt eine Pull-Anfrage (Konsole)
<a name="how-to-close-pull-request-console"></a>

Du kannst die CodeCommit Konsole verwenden, um eine Pull-Anfrage in einem CodeCommit Repository zu schließen. Nachdem der Status einer Pull-Anforderung in **Closed** geändert wurde, kann er nicht wieder zu **Open** wechseln. Die Benutzer können jedoch weiterhin Änderungen kommentieren und auf Kommentare antworten.

1. Öffnen Sie die CodeCommit Konsole unter [https://console.aws.amazon.com/codesuite/codecommit/home](https://console.aws.amazon.com/codesuite/codecommit/home).

1. Wählen Sie im Bereich **Repositories (Repositorys)** den Namen des Repositorys aus. 

1. Wählen Sie im Navigationsbereich **Pull requests (Pull-Anforderungen)** aus.

1. Standardmäßig wird eine Liste aller offenen Pull-Anforderungen angezeigt. Wählen Sie die offene Pull-Anforderung aus, die Sie schließen möchten.  
![\[In der Konsole werden Pull-Anfragen angezeigt. CodeCommit\]](http://docs.aws.amazon.com/de_de/codecommit/latest/userguide/images/codecommit-pull-request-view.png)

1. Wählen Sie in der Pull-Anforderung **Close pull request (Pull-Anforderung schließen)**. Diese Option schließt die Pull-Anforderung ohne zu versuchen, den Quell-Branch mit dem Ziel-Branch zusammenzuführen. Diese Option bietet keine Möglichkeit, den Quell-Branch beim Schließen der Pull-Anforderung zu löschen. Sie können diesen Vorgang aber selbst ausführen, sobald die Anforderung geschlossen ist.

## Schließt eine Pull-Anfrage (AWS CLI)
<a name="how-to-close-pull-request-cli"></a>

Um AWS CLI Befehle mit zu verwenden CodeCommit, installieren Sie den AWS CLI. Weitere Informationen finden Sie unter [Befehlszeilenreferenz](cmd-ref.md). 

**Um den zu verwenden AWS CLI , um Pull-Requests in einem CodeCommit Repository zu schließen**
+ Um den Status einer Pull-Anforderung in einem Repository von `OPEN` zu `CLOSED` zu ändern, führen Sie den Befehl **update-pull-request-status** aus, wobei Sie Folgendes angeben:
  + ID der Pull-Anforderung (mit der Option **--pull-request-id**).
  + Der Status der Pull-Anforderung (mit der Option **--pull-request-status**).

  Um beispielsweise den Status einer Pull-Anfrage mit der ID von auf den Status *CLOSED* in einem CodeCommit Repository mit dem Namen *42* zu aktualisieren`MyDemoRepo`:

  ```
  aws codecommit update-pull-request-status --pull-request-id 42 --pull-request-status CLOSED  
  ```

  Ist der Befehl erfolgreich, wird eine Ausgabe zurückgegeben, die der folgenden ähnelt:

------
#### [ JSON ]

****  

  ```
  {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
          {
              "Effect": "Allow",
              "Action": "codecommit:GetRepository",
              "Resource": [
                  "arn:aws:codecommit:us-east-2:111122223333:MySharedDemoRepo"
              ]
          }
      ]
  }
  ```

------