Versiones y historial de cambios automatizados en Azure DevOps

Aprende a versionar una aplicación, generar un changelog basado en commits y automatizar con PowerShell, YAML y Azure DevOps para lograr trazabilidad, seguridad y CI/CD.

3 sept 2025 • 5 min de lectura • Equipo Q2BSTUDIO

Inteligencia-Artificial-

Cada persona implicada en el ciclo de vida de un producto digital, ya sea desarrollador de aplicaciones, responsable de proyecto, miembro del equipo técnico o cliente final, necesita trazabilidad a lo largo de todo el proceso para entender qué cambió, cuándo y por qué.

Por qué versionar una aplicación es imprescindible

- Seguimiento detallado de cambios y nuevas funcionalidades

- Gestión de errores y depuración más rápida y eficaz

- Definición de compatibilidades y dependencias

- Comunicación clara con usuarios y clientes

- Preparación de paquetes de actualización

- Actualizaciones periódicas de seguridad

- Soporte y mantenimiento del producto

Cuando hablamos de trazabilidad, nos referimos a que todo cambio, sea cual sea su objetivo, debe estar asociado a una versión del producto. Así, cualquier ajuste se puede rastrear con precisión, los errores de código o de la aplicación se localizan en menos tiempo y con menos recursos, y la comunicación con el usuario sobre lo que incluye la versión X es directa y verificable.

A continuación se presenta una forma práctica de implementar el versionado y la generación de un changelog basado en commits. Para la demostración se utilizan PowerShell, YAML y un proyecto en C#.

Esquema de versionado propuesto en formato w.x.y.z

w mayor definido manualmente

x año actual en tiempo de ejecución

y mes actual en tiempo de ejecución

z contador incremental que se reinicia al inicio de cada mes

Ejemplo w.x.y.z 1.25.3.1, 1.25.3.2, 1.25.4.1

Una vez definido el algoritmo de generación, necesitamos un script que lo ejecute y tenga en cuenta la versión actual del proyecto. En un proyecto C#, la versión suele definirse en el archivo AssemblyInfo.cs; crear un archivo compartido GeneralAssemblyInfo.cs permite unificar la versión en toda la solución cuando hay varios proyectos.

Los atributos que almacenan la versión son AssemblyVersion, AssemblyFileVersion y AssemblyInformationalVersion. Al generar una nueva versión, el script debe actualizar estos atributos en el archivo correspondiente.

El script generate-new-version.ps1 contiene la lógica de ejecución y actualización. Puedes consultarlo y reutilizarlo desde el repositorio público en GitHub a través de este script de versionado con PowerShell. Para simplificar su uso en local, crea un archivo bat que invoque el script con los parámetros necesarios y evita errores por valores olvidados.

Cómo generar un changelog basado en commits

Mensajes de commit claros, relevantes y bien estructurados son esenciales para mantener un historial entendible del proyecto. Un buen mensaje explica el propósito del cambio sin necesidad de abrir el código, facilita localizar cuándo se introdujo un problema y acelera la depuración.

La estructura de changelog que proponemos es sencilla y legible, por ejemplo encabezado con v0.0.0.0 y una lista de entradas con hash corto, autor y resumen del cambio. Esto permite identificar de un vistazo qué ha cambiado entre versiones.

El script de soporte implementa tres funciones clave Get-CommitMessage para recuperar el mensaje, Get-CommitHash para obtener el hash del commit y Add-ChangeLog para registrar la entrada en el archivo de historial.

Parámetros de entrada recomendados nombre de la aplicación, si se debe generar una nueva versión, si se hace pull automático de la rama principal, si se hace commit y push automáticos, nombre de rama origen y destino, y ruta de ejecución de la solución. La implementación completa puede verse en el script generate-change-log.ps1.

Si eres el único desarrollador o el equipo es pequeño, puedes ejecutar el script en local sin problemas. Para ahorrar tiempo, automatiza con un bat y estandariza los parámetros.

Automatización con Azure DevOps

Para llevar esto a un flujo automatizado se definen dos pipelines YAML run_gen_changelog_version.yaml para generar la nueva versión y el changelog y run_solution_build.yaml para compilar la solución. La idea es ejecutarlos como validación previa al merge de una feature hacia la rama estable develop mediante políticas de rama.

Configuración de pipelines añade los YAML al repositorio y crea los pipelines en Azure DevOps. Define variables como commit_user_email y repository_full_path en el pipeline de versión y para la compilación ajusta solutionPath y sdkVersion en variables locales del YAML.

Servicio de compilación de rama otorga permisos de Contribute al Build Service del repositorio para permitir commits y pushes automatizados desde la tubería.

Políticas de rama en develop activa Build Validation para ejecutar ambos pipelines y Status Checks para bloquear el merge hasta que las validaciones pasen. Al crear el pull request, las políticas se disparan, se hace la cola de ejecución y el pipeline de versionado actualiza la versión y el changelog dentro del propio PR.

Resultados esperados el PR muestra los cambios en el archivo de versión y el changelog, las compilaciones superadas y un historial claro de lo que se publica en cada versión.

Cómo te ayuda Q2BSTUDIO

En Q2BSTUDIO somos una empresa de desarrollo de software con foco en aplicaciones a medida, software a medida, automatización y excelencia operativa. Implementamos pipelines y buenas prácticas de versionado en entornos modernos, integrando Azure DevOps, Git, pruebas automatizadas, seguridad y despliegues en la nube. Si buscas acelerar tus entregas y ganar trazabilidad, te ayudamos a diseñar e implantar procesos de integración y entrega continua con estándares de calidad y seguridad corporativa. Descubre cómo optimizamos tus despliegues y gobierno de la nube con nuestros servicios cloud aws y azure y cómo eliminamos tareas repetitivas y riesgos operativos con soluciones de automatización de procesos.

Además, somos especialistas en inteligencia artificial e ia para empresas, agentes IA y soluciones de ciberseguridad integradas con pipelines DevSecOps. Completamos tu ecosistema con servicios inteligencia de negocio y analítica avanzada con power bi para convertir datos en decisiones.

Si quieres llevar tu ciclo de vida de desarrollo al siguiente nivel con trazabilidad, seguridad y velocidad, cuenta con Q2BSTUDIO. Impulsamos tu roadmap con tecnología, metodología y un equipo experto.

Código fuente de la demo y scripts aquí repositorio en GitHub con la solución de versionado y changelog

¿UNA PAUSA?

Juega un momento antes de irte

NUESTROS SERVICIOS

Cómo podemos ayudarte

Inteligencia artificial

Agentes de IA, chatbots y asistentes inteligentes que automatizan tareas y atienden a tus clientes 24/7 para mejorar la eficiencia de tu negocio.

Más info

Desarrollo de software

Aplicaciones web, móviles y de escritorio, intranets, e-commerce, SaaS y plataformas de gestión diseñadas para las necesidades concretas de tu empresa.

Más info

Servicios cloud

Migración, infraestructura, hosting gestionado, alta disponibilidad y seguridad en Microsoft Azure y Amazon Web Services para que tu negocio escale sin límites.

Más info

Ciberseguridad y pentesting

Auditorías de seguridad, test de intrusión (pentesting) y protección de aplicaciones, datos e infraestructura on-premise y cloud, con hacking ético y cumplimiento normativo.

Más info

Business Intelligence

Cuadros de mando y análisis de datos con Power BI: integramos tus fuentes, diseñamos dashboards y KPIs y convertimos tus datos en decisiones.

Más info

Automatización de procesos

Automatizamos tareas repetitivas y conectamos tus aplicaciones con n8n, Power Automate, Make y RPA, eliminando trabajo manual y aumentando la productividad.

Más info

Formación para empresas

Formamos a tus equipos en tecnología con criterio: desarrollo web, bases de datos, Git, buenas prácticas y seguridad, automatización con n8n, inteligencia artificial para empresas y creación de soluciones de IA con Azure AI Foundry.

Más info

Auditoría de código

Auditamos el código que creas tú, tu equipo o una IA: te decimos qué está bien y qué mejorar, lo securizamos y lo dejamos listo para producción, web o app.

Más info

Generación de imágenes con IA

Creamos por ti las imágenes que necesita tu negocio con inteligencia artificial: producto, redes, publicidad, ilustración y avatares. Tú nos dices qué quieres y te lo entregamos listo para usar.

Más info

Generación de vídeos con IA

Creamos por ti vídeos con inteligencia artificial: promocionales, para redes, presentadores virtuales, doblaje y animaciones. Nos cuentas la idea y te lo entregamos montado y listo para publicar.

Más info

Avatares conversacionales con IA

Creamos avatares conversacionales con IA —humanos digitales con cara y voz— que atienden a tus clientes y equipos con el conocimiento de tu empresa, en tu web, monitores interactivos, WhatsApp o Teams.

Más info

Marketing Online e IA

Google Ads, Meta Ads, LinkedIn Ads y posicionamiento en motores de IA (GEO/AEO): captamos clientes y hacemos que tu marca aparezca donde te buscan, también en ChatGPT, Gemini y Perplexity.

Más info

¿Tienes un proyecto en mente?

Cuéntanos tu visión y la convertimos en una solución de software. Sea cual sea el alcance, hacemos realidad tu idea.