View a markdown version of this page

¿Qué es? AWS CodeCommit? - AWS CodeCommit

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.

¿Qué es? AWS CodeCommit?

AWS CodeCommit es un servicio de control de versiones hospedado por Amazon Web Services que puedes usar para almacenar y administrar de forma privada activos (como documentos, código fuente y archivos binarios) en la nube. Para obtener información sobre los precios CodeCommit, consulte Precios.

nota

CodeCommit está dentro del alcance de muchos programas de cumplimiento. Para obtener más información sobre los esfuerzos de cumplimiento AWS y los esfuerzos de cumplimiento, consulte AWS los servicios incluidos por programa de cumplimiento.

Se trata de un servicio compatible con HIPAA. Para obtener más información sobre AWS, U.S. La Ley de Portabilidad y Responsabilidad del Seguro Médico de 1996 (HIPAA) y el uso de AWS los servicios para procesar, almacenar y transmitir información médica protegida (PHI), consulte la descripción general de la HIPAA.

Para obtener información sobre este servicio y la ISO 27001, una norma de administración de la seguridad que especifica las prácticas recomendadas en materia de seguridad, consulte Información general de ISO 27001.

Para obtener información sobre este servicio y el estándar de seguridad de datos del sector de tarjetas de pago (PCI DSS), consulte Información general de PCI DSS.

Para obtener más información sobre este servicio y el estándar del gobierno de Estados Unidos Publicación del Estándar de Procesamiento de la Información Federal (FIPS, Federal Information Processing Standard) 140-2 que especifica los requisitos de seguridad para los módulos criptográficos que protegen información confidencial, consulte la descripción general del Estándar de Procesamiento de la Información Federal (FIPS) 140-2 y Puntos de conexión de Git.

Presentamos CodeCommit

CodeCommit es un servicio de control de código fuente administrado, seguro y altamente escalable que aloja repositorios Git privados. CodeCommit elimina la necesidad de administrar tu propio sistema de control de código fuente o de preocuparte por escalar su infraestructura. Puede usarlo CodeCommit para almacenar cualquier cosa, desde código hasta archivos binarios. Es compatible con la funcionalidad estándar de Git, por lo que funciona a la perfección con las Git-based herramientas existentes.

Con CodeCommit, puedes:

  • Benefíciese de un servicio totalmente gestionado y hospedado por AWS. CodeCommit proporciona una alta disponibilidad y durabilidad del servicio y elimina la sobrecarga administrativa que supone administrar su propio hardware y software. No es necesario aprovisionar ni escalar hardware, ni instalar, configurar y actualizar software de servidor.

  • Almacene su código de forma segura. CodeCommit los repositorios se cifran tanto en reposo como en tránsito.

  • Trabaje de forma colaborativa en el código. CodeCommit los repositorios admiten solicitudes de extracción, en las que los usuarios pueden revisar los cambios de código de los demás usuarios y comentarlos antes de fusionarlos en sucursales; también admiten notificaciones que envían automáticamente correos electrónicos a los usuarios sobre las solicitudes de extracción y los comentarios, y mucho más.

  • Escale fácilmente sus proyectos de control de versiones. Los repositorios de CodeCommit pueden escalarse para satisfacer sus necesidades de desarrollo. El servicio puede gestionar repositorios con un gran número de archivos o ramificaciones, archivos de gran tamaño e historiales de revisión largos.

  • Almacena cualquier cosa, en cualquier momento. CodeCommit no tiene límite en cuanto al tamaño de tus repositorios ni a los tipos de archivos que puedes almacenar.

  • Intégralo con otros servicios AWS y con servicios de terceros. CodeCommit mantiene tus repositorios cerca de tus otros recursos de producción en la AWS nube, lo que ayuda a aumentar la velocidad y la frecuencia de tu ciclo de vida de desarrollo. Está integrado con IAM y se puede usar con otros AWS servicios y en paralelo con otros repositorios. Para obtener más información, consulte Integraciones de productos y servicios con AWS CodeCommit.

  • Migrar fácilmente archivos desde otros repositorios remotos. Puede migrar CodeCommit desde cualquier Git-based repositorio.

  • Usa las herramientas de Git que ya conoces. CodeCommit admite los comandos de Git, así como sus propios AWS CLI comandos y API.

CodeCommit, Git y elegir la opción correcta AWS servicio para sus necesidades

Como Git-based servicio, CodeCommit se adapta bien a la mayoría de las necesidades de control de versiones. No hay límites arbitrarios en el tamaño de archivo, el tipo de archivo y el tamaño de repositorio. Sin embargo, existen limitaciones inherentes a Git que pueden afectar negativamente al rendimiento de ciertos tipos de operaciones, en concreto a lo largo del tiempo. Puedes evitar una posible degradación del rendimiento del CodeCommit repositorio si evitas usarlo en casos de uso en los que otros AWS servicios se adapten mejor a la tarea. También puede optimizar el rendimiento de Git para repositorios complejos. Estos son algunos casos de uso en los que Git CodeCommit, y por lo tanto, podría no ser la mejor solución para ti, o en los que podrías necesitar tomar medidas adicionales para optimizar Git.

caso de uso Description (Descripción) Otros servicios que tener en cuenta
Archivos grandes que cambian con frecuencia Git utiliza codificación delta para almacenar las diferencias entre las versiones de los archivos. Por ejemplo, si cambia unas pocas palabras de un documento, Git solo almacenará las palabras cambiadas. Si tiene archivos u objetos de más de 5 MB con muchos cambios, Git podría necesitar reconstruir una gran cadena de diferencias delta. Esto puede consumir una cantidad cada vez mayor de recursos de procesamiento, tanto en tu ordenador local CodeCommit como en uno, a medida que estos archivos vayan creciendo con el tiempo. Para versionar archivos de gran tamaño, considere Amazon Simple Storage Service (Amazon S3). Para más información, consulte Uso del control de versiones en la Guía del usuario de Amazon Simple Storage Service.
Base de datos Los repositorios de Git crecen con el tiempo. Debido a que el control de versiones realiza un seguimiento de todos los cambios, cualquier modificación aumentará el tamaño del repositorio. En otras palabras, a medida que confirma datos, incluso si borra datos en una confirmación, los datos se añaden a un repositorio. A medida que haya más datos para procesar y transmitir con el tiempo, Git se ralentizará. Esto es especialmente perjudicial en un caso de uso de base de datos. Git no se diseñó como una base de datos. Para crear y utilizar una base de datos con un rendimiento constante, independientemente del tamaño, tenga en cuenta Amazon DynamoDB. Para obtener más información, consulte la Guía de introducción de Amazon DynamoDB.
Registros de seguimiento de auditoría Normalmente, los registros de seguimiento de auditoría se conservan durante largos períodos de tiempo y se generan continuamente mediante procesos del sistema con una cadencia muy frecuente. Git se diseñó para almacenar de forma segura el código fuente generado por grupos de desarrolladores en un ciclo de desarrollo. Los repositorios que cambian rápidamente y que almacenan continuamente cambios en el sistema generados por programación verán degradado su rendimiento con el tiempo. Para almacenar los registros de auditoría, considere Amazon Simple Storage Service (Amazon S3).

Para auditar AWS la actividad, según tu caso de uso, considera usar AWS CloudTrail Amazon o Amazon CloudWatch. AWS Config

Copias de seguridad Git se diseñó para el control de versiones del código fuente escrito por desarrolladores. Puedes enviar confirmaciones a dos repositorios remotos, incluido un CodeCommit repositorio, como estrategia de respaldo. Sin embargo, Git no se diseñó para gestionar las copias de seguridad del sistema de archivos de su equipo, volcados de bases de datos o contenido de copia de seguridad similar. Si se hiciera, podría ralentizar el sistema y aumentar el tiempo necesario para clonar y enviar un repositorio. Para obtener información sobre cómo realizar copias de seguridad AWS en la nube, consulta Copia de seguridad y restauración.
Gran cantidad de ramificaciones o referencias Cuando un cliente Git envía datos al repositorio o extrae datos de él, el servidor remoto debe enviar todas las ramificaciones y referencias, tales como etiquetas, incluso si solo le interesa una sola ramificación. Si tiene miles de ramificaciones y referencias, puede tardar tiempo en el proceso y el envío (negociación de paquetes) y producir una respuesta aparentemente lenta del repositorio. Cuantas más ramificaciones y etiquetas tenga, más tiempo tardará este proceso. Se recomienda usar CodeCommit las ramas y etiquetas que ya no sean necesarias, pero eliminarlas. Para analizar el número de referencias de un CodeCommit repositorio y determinar cuáles podrían no ser necesarias, puede usar uno de los siguientes comandos:
  • Emulador de Linux, macOS o Unix o Bash en Windows:

    git ls-remote | wc -l
  • Powershell:

    git ls-remote | Measure-Object -line

¿Cómo CodeCommit funciona?

CodeCommit es familiar para los usuarios de Git-based repositorios, pero incluso aquellos que no estén familiarizados encontrarán que la transición a los repositorios CodeCommit es relativamente sencilla. CodeCommit proporciona una consola para la creación sencilla de repositorios y la lista de los repositorios y sucursales existentes. En unos pocos pasos sencillos, los usuarios pueden encontrar información sobre un repositorio y clonarlo en su ordenador, creando un repositorio local donde pueden realizar cambios y, a continuación, subirlos al repositorio. CodeCommit Los usuarios pueden trabajar desde la línea de comandos en sus máquinas locales o usar un GUI-based editor.

En la siguiente figura se muestra cómo usar la máquina de desarrollo, la CodeCommit consola AWS CLI o la consola y el CodeCommit servicio para crear y administrar repositorios:

Flujo de trabajo típico CodeCommit

  1. Use la consola AWS CLI o la CodeCommit consola para crear un CodeCommit repositorio.

  2. Desde tu máquina de desarrollo, usa Git para ejecutar git clone y especifica el nombre del CodeCommit repositorio. Esto crea un repositorio local que se conecta al CodeCommit repositorio.

  3. Utilice el repositorio local en su equipo de desarrollo para modificar (añadir, editar y eliminar) archivos y, a continuación, ejecute git add para almacenar los archivos modificados localmente. Ejecute git commit para confirmar los archivos localmente y, a continuación, ejecute git push para enviar los archivos al CodeCommit repositorio.

  4. Descargue los cambios de otros usuarios. Ejecute git pull para sincronizar los archivos del CodeCommit repositorio con su repositorio local. De este modo, se asegura de que trabaja con la versión más reciente de los archivos.

Puedes usar la consola AWS CLI o la CodeCommit consola para rastrear y administrar tus repositorios.

¿En qué se CodeCommit diferencia del control de versiones de archivos en Amazon S3?

CodeCommit está optimizado para el desarrollo de software en equipo. Gestiona lotes de cambios en varios archivos, cosa que puede realizarse en paralelo con los cambios realizados por otros desarrolladores. El control de versiones de Amazon S3; admite la recuperación de versiones pasadas de archivos, pero no se centra en las características de seguimiento de archivos colaborativas que necesitan los equipos de desarrollo de software.

¿Cómo puedo empezar CodeCommit?

Para empezar con CodeCommit:

  1. Siga los pasos que se detallan en Configuración para preparar los equipos de desarrollo.

  2. Siga los pasos que se detallan en uno o más de los tutoriales de Introducción.

  3. Cree proyectos de control de versiones en CodeCommit o migre los proyectos de control de versiones a CodeCommit.

¿Dónde puedo encontrar más información sobre Git?

Si no conoce Git todavía, debe aprender a utilizar Git. A continuación encontrará algunos recursos útiles:

  • Pro Git es una versión online del libro Pro Git escrito por Scott Chacon y publicado por Apress.

  • Git Immersion es una visita guiada interactiva que muestra los conceptos básicos de trabajar con Git publicada por Neo Innovation, Inc.

  • Git Reference es una referencia rápida online que también puede usarse como tutorial en profundidad sobre Git Publicado por el GitHub equipo.

  • Git Cheat Sheet incluye la sintaxis de comandos de Git básicos Publicado por el GitHub equipo.

  • Git Pocket Guide escrita por Richard E. Silverman. Publicada por O'Reilly Media, Inc.