

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Compare y combine ramas en AWS CodeCommit
<a name="how-to-compare-branches"></a>

Puede usar la CodeCommit consola para comparar las ramas de un CodeCommit repositorio. La comparación de ramificaciones le permite ver rápidamente las diferencias que existen entre una ramificación y la ramificación predeterminada, o ver las diferencias que existen entre dos ramificaciones.

**Topics**
+ [Comparación de una ramificación y la ramificación predeterminada](#how-to-compare-branches-default)
+ [Comparación de dos ramificaciones específicas](#how-to-compare-branches-two)
+ [Combinar dos ramificaciones (AWS CLI)](#how-to-merge-branches-cli)

## Comparación de una ramificación y la ramificación predeterminada
<a name="how-to-compare-branches-default"></a>

Utilice la CodeCommit consola para ver rápidamente las diferencias entre una rama y la rama predeterminada de su repositorio.

1. Abre la CodeCommit consola en [https://console.aws.amazon.com/codesuite/codecommit/home](https://console.aws.amazon.com/codesuite/codecommit/home).

1. En **Repositories (Repositorios)**, elija el nombre del repositorio cuyas ramificaciones desea comparar. 

1. En el panel de navegación, seleccione **Commits (Confirmaciones)** y haga clic en la pestaña **Compare commits (Comparar confirmaciones)**.

1. En **Destination (Destino)**, seleccione el nombre de la ramificación predeterminada. En **Source (Origen)**, elija la ramificación que desee comparar con la ramificación predeterminada. Elija **Compare**.

## Comparación de dos ramificaciones específicas
<a name="how-to-compare-branches-two"></a>

Utilice la CodeCommit consola para ver las diferencias entre las dos ramas que desee comparar.

1. Abre la CodeCommit consola en [https://console.aws.amazon.com/codesuite/codecommit/home](https://console.aws.amazon.com/codesuite/codecommit/home).

1. En **Repositories (Repositorios)**, elija el nombre del repositorio cuyas ramificaciones desea comparar. 

1. En el panel de navegación, seleccione **Commits (Confirmaciones)** y haga clic en la pestaña **Compare commits (Comparar confirmaciones)**.

1. En **Destination (Destino)** y **Source (Origen)**, seleccione las dos ramificaciones que desea comparar y haga clic en **Compare (Comparar)**. Para ver la lista de archivos modificados, amplíe la lista de archivos modificados. Puede ver los cambios en los archivos de forma paralela (vista Split) o en línea (vista Unified).
**nota**  
Si ha iniciado sesión como un usuario de IAM, puede configurar y guardar sus preferencias para ver el código y otros ajustes de la consola. Para obtener más información, consulte [Trabajo con las preferencias del usuario](user-preferences.md).  
![Vista abreviada de las diferencias entre dos ramificaciones.](http://docs.aws.amazon.com/es_es/codecommit/latest/userguide/images/codecommit-compare-branches.png)

## Combinar dos ramificaciones (AWS CLI)
<a name="how-to-merge-branches-cli"></a>

Puede combinar dos ramas en un CodeCommit repositorio utilizando una de las AWS CLI estrategias de combinación disponibles ejecutando uno de los siguientes comandos:
+ Para combinar dos ramificaciones mediante la estrategia de combinación de avance rápido, ejecute el comando [**merge-branches-by-fast-forward**](#merge-branches-by-fast-forward).
+ Para combinar dos ramificaciones mediante la estrategia de combinación de squash, ejecute el comando [**merge-branches-by-squash**](#merge-branches-by-squash).
+ Para combinar dos ramificaciones mediante la estrategia de combinación de tres modos, ejecute el comando [**merge-branches-by-three-way**](#merge-branches-by-three-way).

También puede probar las combinaciones ejecutando el comando **create-unreferenced-merge-commit**. Para obtener más información, consulte [Resolver conflictos en una solicitud de extracción](how-to-resolve-conflict-pull-request.md#create-unreferenced-merge-commit).

**nota**  
Para usar AWS CLI comandos con CodeCommit, instale el AWS CLI. Para obtener más información, consulte [Referencia de la línea de comandos](cmd-ref.md). 

**Para usar el AWS CLI para fusionar dos ramas en un CodeCommit repositorio**

1. <a name="merge-branches-by-fast-forward"></a>Para combinar dos ramificaciones mediante la estrategia de combinación de avance rápido, ejecute el comando **merge-branches-by-fast-forward** especificando: 
   + El nombre de la ramificación de origen que contiene los cambios que desea combinar (con la opción **--source-commit-specifier**). 
   + El nombre de la ramificación de destino donde desea combinar los cambios (con la opción **--destination-commit-specifier**). 
   + El nombre del repositorio (con la opción **--repository-name**).

    Por ejemplo, para fusionar una rama de origen denominada {{bugfix-1234}} con una rama de destino denominada {{preprod}} en un repositorio denominado{{MyDemoRepo}}:

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

   Si se ejecuta correctamente, el resultado del comando será similar al siguiente:

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

1. <a name="merge-branches-by-squash"></a>Para combinar dos ramificaciones mediante la estrategia de combinación de squash, ejecute el comando **merge-branches-by-squash**, especificando:
   + El nombre de la ramificación de origen que contiene los cambios que desea combinar (con la opción **--source-commit-specifier**). 
   + El nombre de la ramificación de destino donde desea combinar los cambios (con la opción **--destination-commit-specifier**). 
   + El nombre del repositorio (con la opción **--repository-name**).
   + El mensaje de confirmación que incluir (con la opción **--commit-message**).
   + El nombre que se utilizará para la confirmación (con la opción **--name**).
   + La dirección de correo electrónico que se va a utilizar para la confirmación (con la opción **--email**).

   Por ejemplo, para fusionar una rama de origen denominada {{bugfix-bug1234}} con una rama de destino denominada {{bugfix-quarterly}} en un repositorio denominado{{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}}
   ```

   Si se ejecuta correctamente, el resultado del comando será similar al siguiente:

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

1. <a name="merge-branches-by-three-way"></a>Para combinar dos ramificaciones mediante la estrategia de combinación de tres modos, ejecute el comando **merge-branches-by-three-way**, especificando:
   + El nombre de la ramificación de origen que contiene los cambios que desea combinar (con la opción **--source-commit-specifier**). 
   + El nombre de la ramificación de destino donde desea combinar los cambios (con la opción **--destination-commit-specifier**). 
   + El nombre del repositorio (con la opción **--repository-name**).
   + El mensaje de confirmación que incluir (con la opción **--commit-message**).
   + El nombre que se utilizará para la confirmación (con la opción **--name**).
   + La dirección de correo electrónico que se va a utilizar para la confirmación (con la opción **--email**).

   Por ejemplo, para fusionar una rama de origen denominada {{main}} con una rama de destino denominada {{bugfix-1234}} en un repositorio denominado{{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}}
   ```

   Si se ejecuta correctamente, el resultado del comando será similar al siguiente:

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