

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Confronta e unisci i rami in AWS CodeCommit
<a name="how-to-compare-branches"></a>

È possibile utilizzare la CodeCommit console per confrontare i rami in un CodeCommit repository. Il confronto dei rami consente di visualizzare rapidamente le differenze tra un ramo e il ramo predefinito o visualizzare le differenze tra due rami qualsiasi.

**Topics**
+ [Confronta un ramo con il ramo predefinito](#how-to-compare-branches-default)
+ [Confronta due rami specifici](#how-to-compare-branches-two)
+ [Unisci due rami ()AWS CLI](#how-to-merge-branches-cli)

## Confronta un ramo con il ramo predefinito
<a name="how-to-compare-branches-default"></a>

Usa la CodeCommit console per visualizzare rapidamente le differenze tra un ramo e il ramo predefinito del tuo repository.

1. Apri la CodeCommit console su [https://console.aws.amazon.com/codesuite/codecommit/home](https://console.aws.amazon.com/codesuite/codecommit/home).

1. In **Repositories (Repository)**, selezionare il nome del repository in cui si desidera confrontare i rami. 

1. Nel riquadro di navigazione scegliere **Commits (Commit)**, quindi selezionare la scheda **Compare commits (Confronta commit)**.

1. In **Destination (Destinazione)**, scegliere il nome del ramo predefinito. In **Source (Origine)**, scegliere il ramo da confrontare con il ramo predefinito. Scegli **Confronta**.

## Confronta due rami specifici
<a name="how-to-compare-branches-two"></a>

Usa la CodeCommit console per visualizzare le differenze tra due rami che desideri confrontare.

1. Apri la CodeCommit console su [https://console.aws.amazon.com/codesuite/codecommit/home](https://console.aws.amazon.com/codesuite/codecommit/home).

1. In **Repositories (Repository)**, selezionare il nome del repository in cui si desidera confrontare i rami. 

1. Nel riquadro di navigazione scegliere **Commits (Commit)**, quindi selezionare la scheda **Compare commits (Confronta commit)**.

1. In **Destination (Destinazione)** e **Source (Origine)**, scegliere i due rami da confrontare e quindi scegliere **Compare (Confronta)**. Per visualizzare l'elenco dei file modificati, espandere l'elenco dei file modificati. È possibile visualizzare le modifiche nei file affiancati (visualizzazione doppia) o inline (visualizzazione unificata).
**Nota**  
Se hai effettuato l'accesso come utente IAM, puoi configurare e salvare le tue preferenze per la visualizzazione del codice e altre impostazioni della console. Per ulteriori informazioni, consulta [Utilizzo delle preferenze dell'utente](user-preferences.md).  
![Una panoramica abbreviata delle differenze tra due rami.](http://docs.aws.amazon.com/it_it/codecommit/latest/userguide/images/codecommit-compare-branches.png)

## Unisci due rami ()AWS CLI
<a name="how-to-merge-branches-cli"></a>

È possibile unire due rami in un CodeCommit repository utilizzando una delle strategie di unione disponibili eseguendo uno dei seguenti comandi: AWS CLI 
+ Per unire due rami utilizzando la strategia di unione avanzamento rapido, esegui il comando [**merge-branches-by-fast-forward**](#merge-branches-by-fast-forward).
+ Per unire due rami utilizzando la strategia di unione squash, esegui il comando[**merge-branches-by-squash**](#merge-branches-by-squash).
+ Per unire due rami utilizzando la strategia di unione a tre vie, esegui il comando [**merge-branches-by-three-way**](#merge-branches-by-three-way).

Puoi anche testare le unioni eseguendo il comando **create-unreferenced-merge-commit**. Per ulteriori informazioni, consulta [Risolvere i conflitti in una richiesta di pull](how-to-resolve-conflict-pull-request.md#create-unreferenced-merge-commit).

**Nota**  
Per utilizzare AWS CLI i comandi con CodeCommit, installa il. AWS CLI Per ulteriori informazioni, consulta [Guida di riferimento alla riga di comando](cmd-ref.md). 

**Da utilizzare AWS CLI per unire due rami in un repository CodeCommit**

1. <a name="merge-branches-by-fast-forward"></a>Per unire due rami utilizzando la strategia di unione avanzamento rapido, esegui il comando **merge-branches-by-fast-forward** specificando: 
   + Il nome del ramo di origine che contiene le modifiche che desideri unire (con l'opzione **--source-commit-specifier**). 
   + Il nome del ramo di destinazione in cui desideri unire le modifiche (con l'opzione **--destination-commit-specifier**). 
   + Il nome del repository (con l'opzione **--repository-name**).

    Ad esempio, per unire un ramo di origine denominato {{bugfix-1234}} in un ramo di destinazione denominato in un {{preprod}} repository denominato: {{MyDemoRepo}}

   ```
   aws codecommit merge-branches-by-fast-forward --source-commit-specifier {{bugfix-bug1234}} --destination-commit-specifier {{preprod}} --repository-name {{MyDemoRepo}}
   ```

   Se il comando viene eseguito correttamente, verrà visualizzato un output simile al seguente:

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

1. <a name="merge-branches-by-squash"></a>Per unire due rami utilizzando la strategia di unione squash, esegui il comando **merge-branches-by-squash** specificando:
   + Il nome del ramo di origine che contiene le modifiche che desideri unire (con l'opzione **--source-commit-specifier**). 
   + Il nome del ramo di destinazione in cui desideri unire le modifiche (con l'opzione **--destination-commit-specifier**). 
   + Il nome del repository (con l'opzione **--repository-name**).
   + Il messaggio di commit da includere (con l'opzione **--commit-message**).
   + Il nome da utilizzare per il commit (con l'opzione **--name**).
   + L'indirizzo e-mail da utilizzare per il commit (con l'opzione **--email**).

   Ad esempio, per unire un ramo di origine denominato {{bugfix-bug1234}} con un ramo di destinazione denominato {{bugfix-quarterly}} in un repository denominato: {{MyDemoRepo}}

   ```
   aws codecommit merge-branches-by-squash --source-commit-specifier {{bugfix-bug1234}} --destination-commit-specifier {{bugfix-quarterly}} --author-name "{{Maria Garcia}}" --email "{{maria_garcia@example.com}}" --commit-message "{{Merging in fix branches to prepare for a general patch.}}" --repository-name {{MyDemoRepo}}
   ```

   Se il comando viene eseguito correttamente, verrà visualizzato un output simile al seguente:

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

1. <a name="merge-branches-by-three-way"></a>Per unire due rami utilizzando la strategia di unione a tre vie, esegui il comando **merge-branches-by-three-way** specificando:
   + Il nome del ramo di origine che contiene le modifiche che desideri unire (con l'opzione **--source-commit-specifier**). 
   + Il nome del ramo di destinazione in cui desideri unire le modifiche (con l'opzione **--destination-commit-specifier**). 
   + Il nome del repository (con l'opzione **--repository-name**).
   + Il messaggio di commit da includere (con l'opzione **--commit-message**).
   + Il nome da utilizzare per il commit (con l'opzione **--name**).
   + L'indirizzo e-mail da utilizzare per il commit (con l'opzione **--email**).

   Ad esempio, per unire un ramo di origine denominato {{main}} con un ramo di destinazione denominato {{bugfix-1234}} in un repository denominato: {{MyDemoRepo}}

   ```
   aws codecommit merge-branches-by-three-way --source-commit-specifier {{main}} --destination-commit-specifier {{bugfix-bug1234}} --author-name "{{Jorge Souza}}" --email "{{jorge_souza@example.com}}" --commit-message "{{Merging changes from main to bugfix branch before additional testing.}}"  --repository-name {{MyDemoRepo}}
   ```

   Se il comando viene eseguito correttamente, verrà visualizzato un output simile al seguente:

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