Introducción
AWS CodeCommit es un servicio de control de versiones completamente administrado que facilita a los equipos almacenar y gestionar el código fuente en repositorios Git privados y seguros. CodeCommit elimina la necesidad de gestionar tu propio sistema de control de versiones y escala automáticamente para satisfacer las necesidades de tu proyecto.
Conceptos Clave
- Repositorio: Un contenedor para tu código fuente y otros archivos.
- Branch: Una versión paralela del código en el repositorio.
- Commit: Una instantánea de los cambios en el código.
- Pull Request: Una solicitud para revisar y fusionar cambios de una rama a otra.
- Merge: La acción de combinar cambios de diferentes ramas.
Configuración Inicial
Paso 1: Crear un Repositorio
- Inicia sesión en la consola de administración de AWS.
- Navega a CodeCommit.
- Haz clic en Create repository.
- Introduce un nombre para tu repositorio y una descripción opcional.
- Haz clic en Create.
Paso 2: Configurar Git para AWS CodeCommit
Configurar Credenciales de AWS
- Instala la AWS CLI si no lo has hecho ya.
- Configura tus credenciales de AWS ejecutando:
Introduce tu Access Key ID, Secret Access Key, región y formato de salida preferido.aws configure
Configurar Git
- Instala Git si no lo has hecho ya.
- Configura tu nombre de usuario y correo electrónico:
git config --global user.name "Tu Nombre" git config --global user.email "[email protected]"
Paso 3: Clonar el Repositorio
- Obtén la URL del repositorio desde la consola de CodeCommit.
- Clona el repositorio:
git clone https://git-codecommit.<region>.amazonaws.com/v1/repos/<nombre-repositorio>
Ejemplo Práctico
Crear y Subir un Archivo
- Navega al directorio del repositorio clonado:
cd <nombre-repositorio>
- Crea un archivo nuevo:
echo "# Mi Proyecto" > README.md
- Añade el archivo al índice de Git:
git add README.md
- Realiza un commit:
git commit -m "Añadir archivo README"
- Sube los cambios al repositorio CodeCommit:
git push origin main
Crear y Fusionar una Rama
- Crea una nueva rama:
git checkout -b nueva-rama
- Realiza cambios en la nueva rama y haz commit:
echo "## Sección Nueva" >> README.md git add README.md git commit -m "Añadir nueva sección al README"
- Sube la nueva rama al repositorio:
git push origin nueva-rama
- Crea un Pull Request desde la consola de CodeCommit para fusionar los cambios de
nueva-rama
amain
. - Revisa y aprueba el Pull Request, luego fusiona los cambios.
Ejercicios Prácticos
Ejercicio 1: Crear y Clonar un Repositorio
- Crea un nuevo repositorio en CodeCommit llamado
mi-repositorio
. - Clona el repositorio en tu máquina local.
- Crea un archivo
index.html
con contenido básico de HTML. - Añade, realiza commit y sube el archivo al repositorio.
Ejercicio 2: Trabajar con Ramas
- Crea una nueva rama llamada
feature-1
. - En la rama
feature-1
, añade una nueva sección al archivoindex.html
. - Realiza commit y sube los cambios a la rama
feature-1
. - Crea un Pull Request para fusionar
feature-1
enmain
. - Fusiona los cambios y verifica que
index.html
enmain
contiene la nueva sección.
Soluciones
Solución al Ejercicio 1
- Crear el repositorio:
aws codecommit create-repository --repository-name mi-repositorio
- Clonar el repositorio:
git clone https://git-codecommit.<region>.amazonaws.com/v1/repos/mi-repositorio cd mi-repositorio
- Crear el archivo
index.html
:<!DOCTYPE html> <html> <head> <title>Mi Proyecto</title> </head> <body> <h1>Bienvenido a Mi Proyecto</h1> </body> </html>
- Añadir, realizar commit y subir el archivo:
git add index.html git commit -m "Añadir archivo index.html" git push origin main
Solución al Ejercicio 2
- Crear la nueva rama:
git checkout -b feature-1
- Añadir una nueva sección al archivo
index.html
:<section> <h2>Nueva Sección</h2> <p>Contenido de la nueva sección.</p> </section>
- Realizar commit y subir los cambios:
git add index.html git commit -m "Añadir nueva sección al index.html" git push origin feature-1
- Crear y fusionar el Pull Request desde la consola de CodeCommit.
Conclusión
AWS CodeCommit es una herramienta poderosa para gestionar el código fuente de manera segura y eficiente. En este módulo, hemos aprendido a configurar un repositorio, realizar operaciones básicas con Git y trabajar con ramas y Pull Requests. Estos conocimientos son fundamentales para colaborar en proyectos de desarrollo de software de manera efectiva. En el próximo módulo, exploraremos AWS CodeBuild para automatizar la construcción y prueba de nuestro código.
Curso de AWS
Módulo 1: Introducción a AWS
- ¿Qué es AWS?
- Configuración de tu cuenta de AWS
- Infraestructura global de AWS
- Consola de administración de AWS