Esta área se centra en la gestión y el seguimiento de los cambios realizados a lo largo del ciclo de vida del desarrollo de software y la infraestructura. Un versionamiento adecuado es fundamental para la colaboración, la trazabilidad y la capacidad de revertir cambios en caso de ser necesario.
1. Control de versiones del código fuente
El uso de sistemas de control de versiones (como Git) para gestionar los cambios en el código fuente de las aplicaciones. Permite llevar un historial de modificaciones, colaborar de manera eficiente entre desarrolladores, crear ramas para el desarrollo de nuevas funcionalidades o correcciones, y fusionar los cambios de forma controlada.
Acciones
- Nivel 1:
- Se cuenta con alguna herramienta para control de versiones de código fuente.
- Nivel 2:
- Se realiza sincronización de código asegurando que todos trabajen sobre la versión más reciente (uso de pulls y pushes regulares).
Qué es Git
Es un software de control de versiones, su propósito es llevar registro de los cambios en archivos de computadora y coordinar el trabajo que varias personas realizan sobre archivos compartidos (También puedes trabajar solo no hay problema). Existe la posibilidad de trabajar de forma remota y una opción es GitHub.
Flujo de trabajo con Git
Tenemos nuestro directorio local (una carpeta en nuestro pc) con muchos archivos, Git nos irá registrando los cambios de archivos o códigos cuando nosotros le indiquemos, así podremos viajar en el tiempo retrocediendo cambios o restaurando versiones de código, ya sea en Local o de forma Remota (servidor externo).
¿Qué es GitHub?
Es una plataforma de desarrollo colaborativo para alojar proyectos (en la nube) utilizando el sistema de control de versiones Git.
Comando esenciales
2. Gestión de ramas
En la gestión de ramas de código, las ramas actúan como indicadores ligeros que permiten separar y organizar el trabajo en desarrollo. Una vez que se completa una tarea en una rama específica, es fundamental fusionar estos cambios de vuelta a la rama principal del equipo. Aunque existen diversas metodologías válidas para llevar a cabo este proceso, es crucial contar con una estrategia bien definida que sea comprendida por todos los miembros del equipo. Esto asegura una colaboración eficiente y un flujo de trabajo más organizado dentro del entorno de DevOps.
Acciones
- Nivel 1:
- Se cuenta con una estrategia de gestión de ramas conocida por todo el equipo y que cubre las necesidades del proyecto (GitHub Flow, Streamline, Gitflow, Trunk-Based Development o alguna metodología similar).
- Nivel 2:
- Borrado de ramas al integrar con ramas principales
- Nivel 3:
- Uso de etiquetas (tag) en la rama principal
- Uso de merge/pull requests
3. Control de versiones de entregables
El versionado de entregables es un aspecto fundamental en la gestión de proyectos de desarrollo de software, ya que permite mantener un control claro sobre las diferentes versiones de un producto a lo largo de su ciclo de vida. Este proceso no solo ayuda a identificar y organizar las actualizaciones de las funcionalidades, sino que también facilita la reversibilidad en caso de que surjan problemas con nuevas versiones.
4. Gestión de artefactos
La gestión de artefactos es un proceso crucial en el desarrollo de software que se refiere a la organización, almacenamiento y control de los diversos productos generados durante el ciclo de vida del proyecto. Estos artefactos pueden incluir código fuente, librerías, documentación, configuraciones y
cualquier otro componente que sea relevante para la construcción y despliegue del software. Implementar prácticas efectivas de gestión de artefactos para asegurar que todos los miembros del equipo tengan acceso a las versiones correctas y actualizadas de los mismos, así como para facilitar la trazabilidad y el control de cambios.
No comments:
Post a Comment