c# .net build-process versioning

c# - .Net AssemblyName.version Compilación versus revisión



build-process versioning (2)

Las versiones posteriores de un ensamblaje que difieren solo por los números de compilación o de revisión se consideran actualizaciones de Hotfix de la versión anterior.

Esta sección explica la diferencia. La Revisión se usa cuando su producto se ha enviado y usted necesita hacer arreglos a una versión enviada mientras ya está progresando con las actualizaciones.

Por ejemplo 1.1.10.0 naves. Estoy haciendo pequeños cambios en la funcionalidad y estoy en 1.1.20.0 cuando recibo una alerta de seguridad que necesita corrección. No puedo incrementar 1.1.10.0 a 1.1.11.0, ya que eso representa otra cosa. Así que uso 1.1.10.1 para identificar que es una revisión del código 1.1.10.0.

Espero que esto sea un poco más claro que el barro. Asimismo, recuerde el tamaño de la empresa y el tamaño de los proyectos de software que envían que dieron con estas definiciones.

La documentación de MSDN establece:

Los números de versión constan de dos a cuatro componentes: mayor, menor, compilación y revisión. Se requieren los componentes mayores y menores; los componentes de compilación y revisión son opcionales, pero el componente de compilación es obligatorio si el componente de revisión está definido. Todos los componentes definidos deben ser enteros mayores o iguales a 0.

El formato del número de versión es el siguiente (los componentes opcionales se muestran entre corchetes ([y]): major.minor [.build [.revision]] Los componentes se usan por convención de la siguiente manera:

  • Principales: los ensamblajes con el mismo nombre pero diferentes versiones principales no son intercambiables. Un número de versión más alto puede indicar una reescritura importante de un producto donde no se puede asumir la compatibilidad con versiones anteriores.

  • Menor: si el nombre y el número de versión principal en dos ensamblajes son iguales, pero el número de versión menor es diferente, esto indica una mejora significativa con la intención de compatibilidad con versiones anteriores. Este número de versión menor superior puede indicar un lanzamiento puntual de un producto o una nueva versión totalmente compatible con versiones anteriores de un producto.

  • Compilación: una diferencia en el número de compilación representa una recompilación de la misma fuente. Se pueden usar diferentes números de compilación cuando cambia el procesador, la plataforma o el compilador.

  • Revisión: los ensamblajes con el mismo nombre, los números de versión mayor y menor, pero las diferentes revisiones pretenden ser totalmente intercambiables. Se puede usar un número de revisión más alto en una compilación que corrige un agujero de seguridad en un ensamblaje publicado anteriormente.

Las versiones posteriores de un ensamblaje que difieren solo por los números de compilación o de revisión se consideran actualizaciones de Hotfix de la versión anterior.

Mi pregunta está relacionada con el significado de los términos Construir y Revisión en este contexto.

Me parece que en el lenguaje general, hacemos "compilaciones" cuando hay cambios en la fuente. Por lo tanto, "compilación 678" y "compilación 679" son diferentes precisamente porque las fuentes son diferentes de alguna manera, generalmente como resultado de un registro de alguna fuente modificada. Me parece que la definición de .NET usa "Revisión" en la forma en que generalmente se usa "construir".

¿Alguien UTILIZA la definición anterior en sus versiones? Si es así, ¿puedes dar ejemplos concretos de POR QUÉ lo hiciste?


Estoy de acuerdo contigo totalmente aquí. Las descripciones dadas no tienen mucho sentido a menos que las interpretes con una pizca de sal. Para mí, el último de los números de versión debería significar compilación , es decir, el número que se actualiza en cada compilación. Los otros números representan diferentes grados de cambio en el software / API.

En la práctica, así es como se usan los números de versión. (Ciertamente, cómo los uso.)

  • Mayor - incrementado cuando el conjunto de características / API del software cambia significativamente

  • Menor : aumenta cuando se realizan cambios notables, cambios menores en la API o la adición de nuevas funcionalidades

  • Compilación : se incrementa cuando se realizan cambios menores, generalmente correcciones de errores y mejoras (aunque no hay cambios en la API)

  • Revisión : un ID / número único que representa la instancia de compilación