La convención para los números de versión es major.minor.build
.
major
se incrementa cuando la interfaz pública cambia de manera incompatible. Por ejemplo, se elimina un método o su firma cambia. Los clientes que usan su biblioteca deben tener cuidado al usar una biblioteca con una versión principal diferente, porque las cosas pueden romperse.
minor
se incrementa cuando la interfaz pública cambia de una manera compatible. Por ejemplo, se agrega un método. Los clientes no necesitan preocuparse por el uso de la nueva versión, ya que todas las funciones a las que están acostumbrados a ver seguirán allí y actuarán de la misma manera.
build
se incrementa cuando la implementación de una función cambia, pero no se agregan ni eliminan firmas. Por ejemplo, encontraste un error y lo solucionaste. Los clientes probablemente deberían actualizar a la nueva versión, pero si no funciona porque dependían del comportamiento defectuoso, pueden degradarse fácilmente.
El problema aquí es que parece que está modificando el código escrito y publicado por otra persona. La convención aquí, como lo he visto, es fijar el número de versión con -yourname-version
o solo - version
. Por ejemplo, linux-image-2.6.28-27
es un nombre probable de una imagen del kernel de Ubuntu.
Como Maven usa guiones para diferenciar entre las coordenadas de los artefactos, sin embargo, recomendaría (muy largo al parecer, simplemente) agregar .version
para no confundirlo. Entonces 3.6.2.1
en este caso.
Buena respuesta. También recomendaría leer sobre versiones semánticas: http://semver.org/ – Nicholas