Comience con AWS de forma gratuita

Cree una cuenta gratuita

Disfrute de doce meses de acceso a la capa gratuita de AWS y de otras características del nivel Basic de AWS Support, entre otras, un servicio ininterrumpido de soporte al cliente, foros de soporte y muchas más.
Consulte los detalles de la capa gratuita de AWS »


P: ¿Qué es AWS CodeCommit?
AWS CodeCommit es un servicio de control de código fuente seguro, administrado y de alta escalabilidad que hospeda repositorios de Git privados. Con AWS CodeCommit, no necesita operar un sistema de control de código fuente propio ni preocuparse por el escalado de la infraestructura de dicho sistema. AWS CodeCommit, que funciona perfectamente con las herramientas de Git existentes, se puede utilizar para almacenar cualquier elemento, ya sea código o binarios.

P: ¿Qué es Git?
Git es un sistema de control de versiones distribuido de código abierto. Para trabajar con repositorios de AWS CodeCommit, utiliza la interfaz de línea de comandos (CLI) de Git o cualquiera de los clientes de Git disponibles. Para obtener más información sobre Git, consulte la documentación de Git. Para obtener más información sobre el uso de AWS CodeCommit con Git, consulte Getting Started with AWS CodeCommit.

P: ¿Quién debe utilizar AWS CodeCommit?
AWS CodeCommit se ha diseñado para desarrolladores de software que necesitan un sistema de control de código fuente seguro, de confianza y escalable para almacenar y versionar el código. Además, AWS CodeCommit está disponible para cualquiera que busque un almacenamiento de datos totalmente administrado y sencillo de usar con control de versiones. Por ejemplo, los administradores de TI pueden utilizar AWS CodeCommit para almacenar sus scripts y configuraciones. Los diseñadores web pueden utilizar AWS CodeCommit para almacenar imágenes y páginas HTML.

P: ¿En qué se diferencia AWS CodeCommit de otros sistemas de control de recursos basados en Git?
AWS CodeCommit ofrece una serie de características que no ofrecen otros sistemas de control de código fuente de Git:

  • Totalmente administrado – AWS CodeCommit elimina la necesidad de hospedar, mantener, realizar backups y escalar servidores de control de recursos propios.
  • Seguridad – AWS CodeCommit cifra automáticamente los archivos en tránsito y en reposo. AWS CodeCommit está integrado en AWS Identity and Access Management (IAM), de modo que puede asignar permisos específicos de usuario a los repositorios.
  • Alta disponibilidad – AWS CodeCommit se basa en servicios de AWS de alta escalabilidad, redundancia y durabilidad como Amazon S3 y Amazon DynamoDB.
  • Escalable: AWS CodeCommit le permite almacenar cualquier cantidad de archivos y no hay ningún límite de tamaño para los repositorios.
  • Ciclo de vida de desarrollo más rápido – AWS CodeCommit mantiene los repositorios cerca de los entornos de compilación, puesta en marcha y producción en la nube de AWS. Esto le permite aumentar la velocidad y la frecuencia del ciclo de vida de desarrollo.

P: ¿En qué se diferencia AWS CodeCommit de un bucket de S3 con versiones?
AWS CodeCommit se ha diseñado para el desarrollo de software colaborativo. Administra lotes de cambios en varios archivos, ofrece bifurcación paralela e incluye diferenciación de versiones. En comparación, el control de versiones de Amazon S3 soporta la recuperación de versiones pasadas de archivos individuales, pero no soporta el seguimiento de cambios en lotes que abarcan varios archivos u otras características necesarias para el desarrollo de software colaborativo.

¿Qué es Git? Git es un sistema de control de versiones distribuido de código abierto. Para trabajar con repositorios de AWS CodeCommit, utiliza la interfaz de línea de comandos (CLI) de Git o cualquiera de los clientes de Git disponibles. Para obtener más información sobre Git, consulte la documentación de Git. Para obtener más información sobre el uso de AWS CodeCommit con Git, consulte Getting Started with AWS CodeCommit.

P: ¿Cómo puedo comenzar a utilizar AWS CodeCommit?
Puede iniciar sesión en la consola de administración de AWS, crear un repositorio y comenzar a utilizarlo con Git. Si desea ver una introducción rápida del servicio, consulte Introducción, que incluye un tutorial paso a paso.

P: ¿Cómo puedo crear un repositorio?
Puede crear un repositorio desde la consola de administración de AWS o mediante la interfaz de línea de comandos de AWS (CLI de AWS), los AWS SDK o las API de AWS CodeCommit.

P: ¿Cómo puedo actualizar los archivos del repositorio?
Puede utilizar Git para trabajar con el repositorio. Por ejemplo, puede utilizar el comando git clone para realizar una copia local del repositorio de AWS CodeCommit. Realice cambios en los archivos locales y utilice el comando git commit cuando esté preparado para guardar los cambios. Por último, utilice el comando git push para cargar los cambios en el repositorio de AWS CodeCommit. Para ver instrucciones paso a paso, consulte Getting Started with AWS CodeCommit.

P: ¿Cómo puedo importar el repositorio existente a AWS CodeCommit?
Puede utilizar Git para importar cualquier repositorio de Git existente a AWS CodeCommit. Para otros repositorios, como Subversion y Perforce, puede utilizar un importador de Git para migrarlos primero a un repositorio de Git. Para ver instrucciones paso a paso sobre la importación de repositorios de Git, consulte Migrate an Existing Repository to AWS CodeCommit. Si necesita instrucciones sobre la migración de otros repositorios a Git, consulte la documentación de migración de Git.

P: ¿Qué operaciones de Git soporta actualmente AWS CodeCommit?
AWS CodeCommit actualmente soporta los comandos clone, pull, push y fetch.

P: ¿Soporta AWS CodeCommit los submódulos de Git?
Sí. AWS CodeCommit se puede utilizar con repositorios de Git que incluyen submódulos.

P: ¿Cuáles son los límites del servicio al utilizar AWS CodeCommit?
Para obtener información sobre los límites del servicio, consulte la sección sobre los límites.

P: ¿Cuál es el tamaño máximo de un archivo único que puedo almacenar en CodeCommit?
Un archivo único en un repositorio no puede tener más de 2 GB de tamaño.

P: ¿Cómo puedo realizar un backup del repositorio?
Si tiene una copia local del repositorio creada mediante un comando git clone completo, puede utilizarla para restablecer datos. Si desea realizar backups adicionales, existen numerosas formas de hacerlo. Una de ellas consiste en instalar Git en el servidor de backup y ejecutar un trabajo programado que utilice el comando git clone para realizar snapshots periódicas del repositorio. Puede utilizar git pull en vez de git clone si solo desea copiar los cambios incrementales. Tenga en cuenta que estas operaciones pueden ocasionar cargos por usuarios o solicitudes adicionales en función de cómo configure el servidor de backup y la frecuencia de sondeo.

P: ¿Cómo puedo restablecer un repositorio de AWS CodeCommit eliminado?
La eliminación de un repositorio de AWS CodeCommit es una operación de destrucción unidireccional que no se puede deshacer. Para restablecer un repositorio eliminado, deberá volver a crear el repositorio y utilizar un backup o una copia local desde un clonado completo para cargar los datos. Se recomienda el uso de políticas de IAM junto con la protección mediante MFA para limitar los usuarios que pueden eliminar repositorios. Para obtener más detalles, consulte la pregunta ¿Puedo utilizar AWS Identity and Access Management (IAM) para administrar el acceso a AWS CodeCommit? en la sección Seguridad de las preguntas frecuentes.

P: ¿Cómo puedo administrar las revisiones del código con AWS CodeCommit?
Para revisiones de código, puede utilizar cualquier sistema de revisión de código compatible con Git, como el Consejo de revisión.

P: ¿Cómo puedo integrar mi sistema de integración continua con AWS CodeCommit?
Los sistemas de integración continua (CI) se pueden configurar para utilizar Git para extraer código de AWS CodeCommit. Para obtener ejemplos del uso de sistemas CI con AWS CodeCommit, consulte nuestra publicación del blog sobre la integración de AWS CodeCommit con Jenkins.

P: ¿Cómo puedo crear webhooks con AWS CodeCommit?
En la consola de Amazon Simple Notification Service (SNS), puede crear un tema SNS con un extremo HTTP y la URL que desee para el webhook. Entonces, desde la consola de AWS CodeCommit, puede configurar el tema SNS a un evento del repositorio mediante activadores.

P: ¿Puedo obtener un historial de todas las operaciones Git y llamadas a la API de AWS CodeCommit realizadas en mi cuenta para fines de análisis de seguridad y de solución de problemas operativos?
Sí. Para recibir un historial de todas las operaciones Git y llamadas a la API de AWS CodeCommit realizadas en su cuenta, solo tiene que activar AWS CloudTrail en la consola de administración de AWS. En la actualidad, no es posible registrar las confirmaciones individuales en un push Git. Para obtener más información, visite la Guía del usuario de CloudTrail.

P: ¿Puedo utilizar AWS Identity and Access Management (IAM) para administrar el acceso a AWS CodeCommit?
Sí. AWS CodeCommit soporta permisos a nivel de recursos. Para cada repositorio de AWS CodeCommit, puede especificar qué usuarios pueden realizar qué acciones. También puede exigir AWS Multi-Factor Authentication (MFA) para una acción de CodeCommit. Esto le permite añadir un nivel extra de protección para acciones de destrucción como la eliminación de repositorios. Además de las API de AWS CodeCommit, también puede especificar git pull y git push como acciones para controlar el acceso desde clientes de Git. Por ejemplo, puede crear un usuario de solo lectura para un repositorio permitiendo a ese usuario obtener acceso a git pull pero no a git push en el repositorio. Para obtener más información sobre el uso de IAM con AWS CodeCommit, consulte la referencia a los permisos de acceso. Para obtener más información sobre la autenticación del acceso al API mediante MFA, consulte Configuring MFA-Protected API Access.

P: ¿Qué protocolos de comunicación soporta AWS CodeCommit?
Puede utilizar los protocolos HTTPS, SSH o ambos para comunicarse con AWS CodeCommit. Para utilizar HTTPS, instale primero la CLI de AWS. La interfaz de línea de comandos (CLI) de AWS instala un ayudante de credenciales de Git que se puede configurar con credenciales de AWS. Firma automáticamente todas las solicitudes HTTPS para AWS CodeCommit utilizando la especificación de firmas Signature Version 4. Para utilizar SSH, los usuarios crean pares de claves públicas y privadas propios y añaden las claves públicas a los usuarios de IAM. La clave privada cifra la comunicación con AWS CodeCommit. Para ver instrucciones paso a paso sobre cómo configurar el acceso a HTTPS y SSH, consulte la página de configuración de AWS CodeCommit.

P: ¿Qué puertos debo abrir en el firewall para tener acceso a AWS CodeCommit?
Deberá abrir el acceso saliente a un punto de enlace de servicio de AWS CodeCommit en el puerto 22 (SSH) o el puerto 443 (HTTPS).

P: ¿Cómo puedo cifrar el repositorio en AWS CodeCommit?
Los repositorios se cifran automáticamente en reposo. El cliente no tiene que hacer nada. AWS CodeCommit utiliza AWS Key Management Service (KMS) para cifrar los repositorios. Cuando crea el primer repositorio, se crea una clave de CodeCommit administrada por AWS en la cuenta de AWS. Para obtener más detalles, consulte Encryption for AWS CodeCommit Repositories.

P: ¿Puedo habilitar el acceso entre cuentas en el repositorio?
Sí. Puede crear una función de IAM en la cuenta de AWS para delegar el acceso a un repositorio a los usuarios de IAM de otras cuentas de AWS. Los usuarios de IAM pueden posteriormente configurar la CLI de AWS para utilizar AWS Security Token Service (STS) y asumir el rol al ejecutar comandos. Para obtener más detalles, consulte la página sobre cómo asumir una función en la documentación de la interfaz de línea de comandos de AWS.

P: ¿Qué regiones soporta AWS CodeCommit?
Consulte Productos y servicios regionales para obtener más información sobre la disponibilidad por región de CodeCommit.

P: ¿Cuánto cuesta AWS CodeCommit?
AWS CodeCommit cuesta 1 USD por usuario activo al mes. Por cada usuario activo, la cuenta recibe 10 GB/mes de almacenamiento y 2 000 solicitudes de Git para ese mes. La asignación de almacenamiento y las solicitudes de Git no utilizadas no se pueden acumular para los meses siguientes. Si necesita más almacenamiento o solicitudes de Git para los usuarios, el uso adicional costará 0,06 USD por GB/mes y 0,001 USD por solicitud de Git. Los usuarios pueden almacenar tantos repositorios de Git como deseen. El uso se calcula cada mes en todas las regiones y se aplica automáticamente a la factura. Consulte la página de precios para obtener más detalles.

P: ¿Cuál es la definición de un usuario activo en AWS CodeCommit?
Un usuario activo es cualquier identidad de AWS (usuario o rol de IAM, usuario federado o cuenta raíz) que obtiene acceso a los repositorios de AWS CodeCommit durante el mes, ya sea mediante solicitudes de Git o utilizando la consola de administración de AWS. Un servidor que obtiene acceso a CodeCommit con una identidad de AWS única cuenta como un usuario activo.

P: ¿Qué solicitudes de Git se tienen en cuenta en la asignación mensual?
Una solicitud de Git incluye cualquier inserción o extracción que transmita objetos de repositorio. La solicitud no se cuenta en la asignación de solicitudes de Git si no se produce transferencia de objetos debido a la actualización de las bifurcaciones locales y remotas.