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 • Equip 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?

Juga una estona abans de marxar

ELS NOSTRES SERVEIS

Com et podem ajudar

Intel·ligència artificial

Agents d'IA, chatbots i assistents intel·ligents que automatitzen tasques i atenen els teus clients 24/7 per millorar l'eficiència del teu negoci.

Més info

Desenvolupament de programari

Aplicacions web, mòbils i d'escriptori, intranets, e-commerce, SaaS i plataformes de gestió dissenyades per a les necessitats concretes de la teva empresa.

Més info

Serveis cloud

Migració, infraestructura, hosting gestionat, alta disponibilitat i seguretat en Microsoft Azure i Amazon Web Services perquè el teu negoci escali sense límits.

Més info

Ciberseguretat i pentesting

Auditories de seguretat, test d'intrusió (pentesting) i protecció d'aplicacions, dades i infraestructura on-premise i cloud, amb hacking ètic i compliment normatiu.

Més info

Business Intelligence

Quadres de comandament i anàlisi de dades amb Power BI: integrem les teves fonts, dissenyem dashboards i KPIs i convertim les teves dades en decisions.

Més info

Automatització de processos

Automatitzem tasques repetitives i connectem les teves aplicacions amb n8n, Power Automate, Make i RPA, eliminant treball manual i augmentant la productivitat.

Més info

Formació per a empreses

Formem els teus equips en tecnologia amb criteri: desenvolupament web, bases de dades, Git, bones pràctiques i seguretat, automatització amb n8n, intel·ligència artificial per a empreses i creació de solucions d'IA amb Azure AI Foundry.

Més info

Auditoria de codi

Auditem el codi que creguis tu, el teu equip o una IA: et diem què està bé i què millorar, el securitzem i el deixem llest per a producció, web o app.

Més info

Generació d'imatges amb IA

Creem per tu les imatges que necessita el teu negoci amb intel·ligència artificial: producte, xarxes, publicitat, il·lustració i avatars. Tu ens dius què vols i t'ho lliurem llest per fer servir.

Més info

Generació de vídeos amb IA

Creem per tu vídeos amb intel·ligència artificial: promocionals, per a xarxes, presentadors virtuals, doblatge i animacions. Ens comptes la idea i t'ho lliurem muntat i llest per publicar.

Més info

Avatars conversacionals amb IA

Creem avatars conversacionals amb IA —humans digitals amb cara i veu— que atenen els teus clients i equips amb el coneixement de la teva empresa, a la teva web, monitors interactius, WhatsApp o Teams.

Més info

Màrqueting Online i IA

Google Ads, Meta Ads, LinkedIn Ads i posicionament en motors d'IA (GEO/AEO): captem clients i fem que la teva marca aparegui on et busquen, també a ChatGPT, Gemini i Perplexity.

Més info

Tens un projecte en ment?

Explica'ns la teva visió i la convertim en una solució de programari. Sigui quin sigui l'abast, fem realitat la teva idea.